Python 语法

看到一些提高效率的代码片段,纪录了一下

0. 序列解包

x, y, z = 1, 2, 3 # 并行赋值
x, y = y, x # 快速交换
value = (1, 2, 3)
x, y, z = value # 序列解包,x = 1…… 可类推

1. 循环中的 else 子句

通常,在循环中使用 break 是因为你「发现」了什么或「出现」了什么情况。要在循环提前结束时采取某种措施很容易,但有时候你可能想在循环正常结束时才采取某种措施。如何判断循环是提前结束还是正常结束的呢?可在循环开始前定义一个布尔变量并将其设置 False ,再在跳出循环时将其设置为 True。这样就可在循环后面使用一条 if 语句来判断循环是否是提前结束的。

broke_out = False 
for x in seq: 
    do_something(x) 
    if condition(x): 
        broke_out = True 
        break 
    do_something_else(x) 
if not broke_out:
    print(“I didn’t break out!”) 

一种更简单的办法是在循环中添加一条 else 子句,它仅在没有调用 break 时才执行。继续前面讨论 break 时的示例。

from math import sqrt
for n in range(99, 81, -1): 
    root = sqrt(n)
    if root == int(root): 
        print(n) 
        break 
else: 
    print(“Didn’t find it!”) 

2. 添加的保留字

pass # 什么也不做,用于判断语句中表示占位符
del # 删除,不常用由于 python 的回收机制,一般不常用
exec # 函数,可执行其中的语句,无返回值,例如:
exec("print('Hello, world!')") 
# 输出 Hello, world!
eval # 函数,可执行其中的语句,有返回值,例如:
eval(input("Enter an arithmetic expression: ")) 
# Enter an arithmetic expression: 6 + 18 * 2
# 42 
# 不仅执行了语句,而且还可以将输入的内容作为语句再执行

3. 函数的构建

当函数构建为 def test(*value) 时,value 为元组;当构建为 def test(**value) 时,value 为字典。

4. 类的定义

class Person: 

    def set_name(self, name): 
        self.name = name 

    def get_name(self): 
        return self.name 

    def greet(self):
        print("Hello, world! I'm {}.".format(self.name)) 

这个类定义了三个方法,而在实例化一个类的时候,对象总会自动将自身作为第一个参数传入方法,即上面代码块的 self ,但是此变量名可自取,用 self 是因为形象的说明了第一个参数的作用。因此,这些函数也叫做关联的方法

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,444评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,421评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,363评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,460评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,502评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,511评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,280评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,736评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,014评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,190评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,848评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,531评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,159评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,411评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,067评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,078评论 2 352

推荐阅读更多精彩内容

  • 1.基本使用 1.1 数据类型 常用数据类型 Common Data Types 其他类型 Others 1.2 ...
    suwi阅读 1,342评论 0 3
  • Python 简明语法总结 !!! 只针对有经验开发人员 简单输入输出 输出print 10 , '十' 输入na...
    _赖笔小新阅读 15,113评论 3 162
  • 兵器谱 if python没有三目运算符,我挺苦恼的,比如把两个整数较大的那个复制给一个变量,有三目运算符的语言会...
    测试小蚂蚁阅读 3,715评论 0 2
  • 在Python的道路上,我们不仅要学习代码知识,还要建立自己的编程思维,逐步掌握与计算机沟通的方式,真正地实现“人...
    BeautifulSoulpy阅读 1,950评论 0 0
  • 2018年2月24日、星期六、阴 今天是寒假的最后一天了,子墨做完她最后的作业后,便开始复习一下上册的语文和数学。...
    刘子墨妈妈阅读 246评论 0 1