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都很有用,具体取决于您需要做什么.特别是,我的第二个例子更有用,因为将条件置于循环中很容易 – 所以我们有多少个数并不重要,而在第一个例子中我们需要写很多每个附加数字的手工条件. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读