共计 1439 个字符,预计需要花费 4 分钟才能阅读完成。
1、省略号也是对象
… 这是省略号,在 Python 中,所有皆对象。它也不例外。
在 Python 中,它叫做 Ellipsis。
在 Python 3 中你能够间接写…来失去这玩意。
>>> ...
Ellipsis
>>> type(...)
<class 'ellipsis'>
而在 2 中没有…这个语法,只能间接写 Ellipsis 来获取。
>>> Ellipsis
Ellipsis
>>> type(Ellipsis)
<type 'ellipsis'>
>>>
它转为布尔值时为真
>>> bool(...)
True
最初,这货色是一个单例。
>>> id(...)
4362672336
>>> id(...)
4362672336
这货色有啥用呢?据说它是 Numpy 的语法糖,不玩 Numpy 的人,能够说是没啥用的。
在网上只看到这个 用 … 代替 pass,略微有点用,但又不是必须应用的。
try:
1/0
except ZeroDivisionError:
...
2、类的首字母不肯定是大写
在失常状况下,咱们所编写的所见到的代码,如同都默认了类名首字母大写,而实例用小写的这一准则。但这并不是强制性的,即便你反过来的也没有关系。
但有一些内置的类,首字母都是小写,而实例都是大写。
比方 bool 是类名,而 True,False 是其实例;
比方 ellipsis 是类名,Ellipsis 是实例;
还有 int,string,float,list,tuple,dict 等一系列数据类型都是类名,它们都是小写。
3、增量赋值的性能更好
诸如 += 和 *= 这些运算符,叫做 增量赋值运算符。
这里应用用 += 举例,以下两种写法,在成果上是等价的。
# 第一种
a = 1 ; a += 1
# 第二种
a = 1; a = a + 1
+= 其背地应用的魔法办法是 __iadd__,如果没有实现这个办法则会退而求其次,应用__add__。
这两种写法有什么区别呢?
用列表举例 a += b,应用 add 的话就像是应用了 a.extend(b), 如果应用 add 的话,则是 a = a+b, 前者是间接在原列表上进行扩大,而后者是先从原列表中取出值,在一个新的列表中进行扩大,而后再将新的列表对象返回给变量,显然后者的耗费要大些。
所以在能应用增量赋值的时候尽量应用它。
4、and 和 or 的取值程序
and 和 or 是咱们再相熟不过的两个逻辑运算符。而咱们通常只用它来做判断,很少用它来取值。
如果一个 or 表达式中所有值都为真,Python 会抉择第一个值,而 and 表达式则会抉择第二个。
'''
学习中遇到问题没人解答?小编创立了一个 Python 学习交换 QQ 群:857662006
寻找有气味相投的小伙伴,互帮互助, 群里还有不错的视频学习教程和 PDF 电子书!'''
>>>(2 or 3) * (5 and 7)
14 # 2*7
5、如何批改解释器提示符
这个当做明天的一个小彩蛋吧。应该算是比拟冷门的,预计晓得的人很少了吧。
失常状况下,咱们在 终端下 执行 Python 命令是这样的。
>>> for i in range(2):
... print (i)
...
0
1
你是否想过 >>> 和 … 这两个提示符也是能够批改的呢?
>>> import sys
>>> sys.ps1
'>>>'
>>> sys.ps2
'...'
>>>
>>> sys.ps2 = '----------------'
>>> sys.ps1 = 'Python'
>>>'Python'
>>>for i in range(2):
print (i)
----------------
0
1
以上就是本次分享的全部内容,当初想要学习编程的小伙伴欢送关注 Python 技术大本营,获取更多技能与教程。