首页 > 解决方案 > 为什么python有前自增运算符但没有后自增?

问题描述

我尝试在 python 3.7.1 中使用预增量运算符(++var_name),它不会产生任何语法错误,这与产生语法错误的后增量运算符(var_name++)不同。有人可以解释一下吗?

count = 0
++count
print(count)

输出是:

0
[Finished in 0.7s]

但是当我使用后增量时,输出是不同的

count = 0
count++
print(count)

t

他的输出是:

 count++
          ^
SyntaxError: invalid syntax
[Finished in 0.1s]

标签: pythonpython-3.x

解决方案


Python 没有增量运算符,pre 或 post。++count被解释为一元运算符的两个操作+(+(+count)),这里什么都不做,所以结果是 0。

要递增,唯一的选择是使用就地加法运算符,并递增 1:

count += 1

推荐阅读