我注意到,可以将预增减运算符应用于变量(例如++count)。它可以编译,但实际上并不会改变变量的值!
++count
Python中预增/减运算符(++ /-)的行为是什么?
为什么Python会偏离C / C ++中看到的这些运算符的行为?
++不是运算符。它是两个+运算符。该+运营商的身份运营,这什么都不做。(澄清:the +和-一元运算符仅对数字起作用,但是我假设你不会期望假设的++运算符对字符串起作用。)
++
+
the +
-
解析为
+(+count)
转化为
count
你必须使用稍长的+=运算符来完成你想做的事情:
count += 1
我怀疑++和–运算符因一致性和简单性而被遗漏了。我不知道Guido van Rossum做出决定的确切论据,但我可以想象一些论点:
Guido van Rossum
+,+,count
++,count
+= 1
a += 1