python中IF语句容易犯的错误CASE


python3.9和之前的版本中没有switch   case类似的语句,但是下面的IF语句却与之类似,却又不同:

A = B = C = D = E = 1

if   A == 1:
    B=2
elif  B ==2:
    C=3
elif  C == 3:
    D=4
else:
    E=5

print(A,B,C,D,E)

 执行结果是什么?

代码只会执行B=2的赋值语句,其它的判断和赋值不会执行。

这样的语句的运行规则是这样的:

1.判断顺序是自上而下

2.不是每个elif语句都判断,只有上面一个if或者elif判断条件为假时,才会执行下面的一个elif判断

例如本例中: 第一个if判断 A == 1为真,那么执行 B=2语句,之后的elif都不会进行判断了。只有当A==1为假时,才会向下执行elif判断B==2语句。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM