课程
/后端开发
/Python
/初识Python
下面两图问题都一样,求解释
2016-08-17
源自:初识Python 5-3
正在回答
因为if语句是按顺序判断并且只执行一个条件下的语句,当某个条件满足后就会执行该条件下的语句,而后面的条件会被跳过不会进行判断,比如第一张图,age=20满足age>=6,所以此时执行age>=6条件下的语句,然后跳过后面的条件判断,所以并不会执行age>=18条件下的语句,正确的写法应该是:
if age>=18:
elif age >=6:
else:
图2的写法是正确的
zhusilun 提问者
最好是顺序写下,这样既方便观看,而且逻辑有清晰可靠
age = 20
if age >= 18:
print ('adult')
elif age >= 6:
print ('teenager')
print ('kid')
age=20
print 'adult'
print 'teenager'
print 'kids'
因为age=18的时候,也满足第一个if age >= 6条件 ,所以执行的时候先执行到 if age >= 6 ,满足条件,直接print teenager了,不会继续往下执行。
改成先判断年龄高的,再判断年龄低的
age = 8
if age >=18:
prirnt 'teenagers'
print 'kid'
elif age
举报
学python入门视频教程,让你快速入门并能编写简单的Python程序