Так что я простой кусок кода, который печатает целые числа 1-10:Разница между '+ =' и '= +'?
i = 0
while i < 10:
i += 1
print(i)
Тогда, если вы просто изменить один оператор вокруг на линии 3, он печатает бесконечное количество 1 целых чисел (которые я понять, почему он это делает). Почему не возникает синтаксическая ошибка при запуске этой второй программы? Разве это не вызовет синтаксическую ошибку в случае, если оператор присваивания сопровождается оператором сложения?
i = 0
while i < 10:
i =+ 1
print(i)
'i = + 1' - это то же самое, что и' i = 1'. '+' - это унарный оператор. –
См. [Справочник по языку в унарных выражениях] (https://docs.python.org/3/reference/expressions.html#grammar-token-u_expr) –