python - 是否elif后面的语句执行了,这个循环就跳出了,再后面的语句就不执行了?
高洛峰
高洛峰 2017-04-17 17:51:44
[Python讨论组]

比如我定义了 i=50,就只执行

elif (i-40)>0:
    ix=(i-40)*0.03+2.75
    print(ix)

后面的 elif 就不执行了?


if i-100>0:
    ix=(i-100)*0.01+0.6+0.6+1+1+0.75
    print(ix)
elif (i-60)>0:
    ix=(i-60)*0.015+0.6+1+1.75
    print(ix)
elif (i-40)>0:
    ix=(i-40)*0.03+2.75
    print(ix)
elif (i-20)>0:
    ix=(i-20)*0.05+1.75
    print(ix)
elif (i-10)>0:
    ix=(i-10)*0.075+1
    print(ix)
elif i>0:
    ix=i*0.1
    print(ix)
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(5)
高洛峰

当然, 只要匹配了一个if条件,其他的都不会再作判断的。

大家讲道理

判断语句,就是说只有一个人坑给你跳

PHP中文网

这还有什么疑问么?

高洛峰

从上到下,依次判断,满足条件的第一个能进去的if,elif执行完里面操作后,就不会检查下面的了

黄舟

对应的一组 if-elif-else 只会执行其中一个分支,
如果多个分支条件为真,只执行最上面的一个(条件为真的)分支

补充:如果想要后面的也执行(即重新判断条件),把elif改成if即可

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号