python学习笔记之-- ++i

2022-04-14  本文已影响0人  itsenlin

引子

python初学者对于下面这个例子有可能第一反应是会报SyntaxError异常:

i = 0
myList = [1, 2, 3]
while i < len(myList):
    print(myList[i])
    ++i

答案是错的,不会报异常,但是会死循环一直打印1,也即myList[0]

分析

在学习python语法时有学到python语言是不支持自增或者自减的。如果在python语言中使用自增或者自减符号时会报语法错误。

上面这个例子没有报错,那应该就是python语言将++i当成了正常的表达式,而不是自增表达式。

是的,python语言会将++i转换成+(+i)+即可以表示加法符号,也可以表示一个正数符号,这里就会将两个+转换成两将正数符号,最终结果是++i还是i自己。这也说明了为什么上面这个例子是一个死循环并且一直输出myList[0]了

可以尝试下,将++i换成i++就会报语法错误了。

上一篇下一篇

猜你喜欢

热点阅读