盘点 Python 中的那些冷知识

  1. 省略号也是对象

… 这是省略号,在Python中,一切皆对象。它也不例外。

在 Python 中,它叫做 Ellipsis 。

在 Python 3 中你可以直接写…来得到这玩意。

…Ellipsis>>> type(…)

而在 2 中没有…这个语法,只能直接写Ellipsis来获取。

EllipsisEllipsis>>> type(Ellipsis)>>>

它转为布尔值时为真

bool(…)True

最后,这东西是一个单例。

id(…)4362672336>>> id(…)4362672336

这东西有啥用呢?据说它是Numpy的语法糖,不玩 Numpy 的人,可以说是没啥用的。最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可以联系维:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~

在网上只看到这个 用 … 代替 pass ,稍微有点用,但又不是必须使用的。

try: 1/0except ZeroDivisionError: …

  1. 类首字母不一定是大写

在正常情况下,我们所编写的所见到的代码,好像都默许了类名首字母大写,而实例用小写的这一准则。但这并不是强制性的,即使你反过来的也没有关系。

但有一些内置的类,首字母都是小写,而实例都是大写。

比如 bool 是类名,而 True,False 是其实例;

比如 ellipsis 是类名,Ellipsis是实例;

还有 int,string,float,list,tuple,dict 等一系列数据类型都是类名,它们都是小写。

  1. 增量赋值的性能更好

诸如 += 和 *= 这些运算符,叫做 增量赋值运算符。

这里使用用 += 举例,以下两种写法,在效果上是等价的。

第一种a = 1 ; a += 1# 第二种a = 1; a = a + 1

+= 其背后使用的魔法方法是 iadd,如果没有实现这个方法则会退而求其次,使用 add

这两种写法有什么区别呢?

用列表举例 a += b,使用 iadd 的话就像是使用了a.extend(b),如果使用 add 的话,则是 a = a+b,前者是直接在原列表上进行扩展,而后者是先从原列表中取出值,在一个新的列表中进行扩展,然后再将新的列表对象返回给变量,显然后者的消耗要大些。最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可以联系维:762459510 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~

所以在能使用增量赋值的时候尽量使用它。

  1. and 和 or 的取值顺序

and 和 or 是我们再熟悉不过的两个逻辑运算符。而我们通常只用它来做判断,很少用它来取值。

如果一个or表达式中所有值都为真,Python会选择第一个值,而and表达式则会选择第二个。

(2 or 3) * (5 and 7)14 # 2*7

  1. 如何修改解释器提示符

这个当做今天的一个小彩蛋吧。应该算是比较冷门的,估计知道的人很少了吧。

正常情况下,我们在 终端下 执行Python 命令是这样的。

for i in range(2):… print (i)…01

你是否想过 >>> 和 … 这两个提示符也是可以修改的呢?

import sys >>> sys.ps1 '>>> ’ >>> sys.ps2 '… ’ >>> >>> sys.ps2 = ‘…’ >>> sys.ps1 = ‘Python编程时光>>>’ Python编程时光>>>for i in range(2): … print (i) … 0 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值