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

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

 
 





 

 

 

转载于:https://www.cnblogs.com/lanyincao/p/10747792.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值