接触过其他语言的同学可能都知道算数运算符里面有个自增运算符++, 在写循环的时候非常常用, 但是Python里面可能会不同,需要引起大家注意。
请看以下Python代码
>>> num = 1 >>> ++num 1 >>> num 1
Python居然不认识++运算符。
同理Python也不认识自减运算符--
>>> num = 1 >>> --num 1 >>> num 1
各位同学要注意啦!
如果大家需要自增运算, 只能老老实实的用变量赋值num = num + 1 这种方式了。
python 不使用 ++ 的哲学逻辑:编译解析上的简洁与语言本身的简洁
>>> b = 1 >>> a = 1 >>> id(a) 372510 >>> id(b) 372510 >>> a is b True
可以看出, Python 中,变量是以内容为基准而不是像 c 中以变量名为基准,所以只要你的数字内容是5,不管你起什么名字,这个变量的 ID 是相同的,同时也就说明了 python 中一个变量可以以多个名称访问
这样的设计逻辑决定了 python 中数字类型的值是不可变的,因为如果如上例,a 和 b 都是 5,当你改变了 a 时,b 也会跟着变,这当然不是我们希望的。
原文来源:https://m.pythontab.com/article/1221