有趣的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')
 

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

 





 

猜你喜欢

转载自www.cnblogs.com/lanyincao/p/10747792.html