有趣的if循环

Posted lanyincao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有趣的if循环相关的知识,希望对你有一定的参考价值。

     今天,在论坛看到一个有趣的if 循环,我感觉有不错,就分享出来

问题,列表只有6个数,为什么打印8个数?原理?

 

 1 q = [a, b, c, d, e, f]
 2 for i in q:
 3     if i == b:
 4         print( 1)
 5     if i == d:
 6         print( 2)
 7     if i == e:
 8         print( 3)
 9     else:
10         print(0)

 

技术图片

 

解题思路

                                    打印增加i,判断循环到哪里多循环了

 1 q = [a, b, c, d, e, f]
 2 for i in q:
 3     if i == b:
 4         print(i + 1)
 5     if i == d:
 6         print(i + 2)
 7     if i == e:
 8         print(i + 3)
 9     else:
10         print(i + 0)

技术图片

 

                                        

为什么只有6个数,却打印8个数?
因为 当i = b是,打印1,但程序没有打断,所以当i = b时,跳到下一个if循环,但i不等于b,打印0,所以当循环到b时,打印两次



                   当然,把if 循环改为elif就不会了
 1 q = [a, b, c, d, e, f]
 2 for i in q:
 3     if i == b:
 4         print(i + 1)
 5     elif i == d:
 6         print(i + 2)
 7     elif i == e:
 8         print(i + 3)
 9     else:
10         print(i + 0)

小白分享,如有什么说错的,麻烦告知,谢谢,大佬勿喷啊!







 

 

 

以上是关于有趣的if循环的主要内容,如果未能解决你的问题,请参考以下文章

python [代码片段]一些有趣的代码#sort

php 有趣的代码片段在某些时候可能会有用。

代码宏定义中使用循环语句

代码宏定义中使用循环语句

shell if 语句

js中一些有趣的现象