Python 中没有 ++ 或 -- 自运算符
因为在 Python 里的数值和字符串之类的都是不可变对象,对不可变对象操作的结果都会生成一个新的对象。
比如:
a =1
a +=1
在 C/java 之类的语言中,把 a 指向内存地址单元数据值由 1 改成了 2。
但是在 Python 中是完全不同的另一套机制。
解释器创建一个新的整数对象 2。
然后把这个对象的地址再次分配给 a。
见下面代码:
>>> id(1)
41116008L
>>> a =1
>>> id(a)
41116008L
>>> id(2)
41115984L
>>>a +=1
>>> id(a)
41115984L
>>>
所以在 Python 中不可能出现C/java 之类那种单独一行一个 i++,i-- 的。