加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – ‘if’和’else if’之间的主要区别是什么?

发布时间:2020-12-20 13:03:22 所属栏目:Python 来源:网络整理
导读:参见英文答案 Difference between multiple if’s and elif’s?????????????????????????????????????8个 比如.. 据一些专家介绍, 这里的条件是互斥的: if(n0): print "Number is Positive"if(n0): print "Number is Negative"if(n==0): print "Number is Z
参见英文答案 > Difference between multiple if’s and elif’s?????????????????????????????????????8个
比如..

据一些专家介绍,

这里的条件是互斥的:

if(n>0):
    print "Number is Positive"
if(n<0):
    print "Number is Negative"
if(n==0):
    print "Number is ZERO"

用elif和其他方法重写会更好:

if n > 0:
    print "Number is Positive"
 elif n < 0:
    print "Number is Negative"
 else:
    print "Number is ZERO"

所以我只想问一个问题,’if’和’elif’之间有什么区别吗?我知道’if’和’elif’之间的基本区别.但我只是想知道,为什么一些新手程序员喜欢’elif’而不是’if’?

解决方法

第一种形式if-if-if测试所有条件,而第二种if-elif-else只测试所需数量:如果它找到一个条件为True,它会停止并且不会评估其余条件.换句话说:当条件互斥时使用if-elif-else.

我们来写一个例子.如果你想确定三个数字之间的最大值,我们可以测试一个是否大于或等于其他值,直到我们找到最大值 – 但是一旦找到该值,就没有必要测试其他值:

greatest = None
if a >= b and a >= c:
    greatest = a
elif b >= a and b >= c:
    greatest = b
else:
    greatest = c
print greatest

或者,我们可以假设一个初始值为最大值,并依次测试其他每个值以查看假设是否成立,根据需要更新假定值:

greatest = None
if a > greatest:
    greatest = a
if b > greatest:
    greatest = b
if c > greatest:
    greatest = c
print greatest

如您所见,if-if-if和if-elif-else都很有用,具体取决于您需要做什么.特别是,我的第二个例子更有用,因为将条件置于循环中很容易 – 所以我们有多少个数并不重要,而在第一个例子中我们需要写很多每个附加数字的手工条件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读