小白学python系列-(6) 条件判断

119 阅读2分钟

条件判断

计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。
if语句的完整形式就是:

if <条件判断1>:
    <执行1>
elif <条件判断2>:
    <执行2>
elif <条件判断3>:
    <执行3>
else:
    <执行4>

根据Python的缩进规则,如果if语句判断是True,就把缩进的两行语句执行了,否则如果if判断是False,不要执行if的内容,继续进入elif的判断,以此类推,到最后都为False,则把else执行了。

if语句执行有个特点,它是从上往下判断,如果在某个判断上是True,把该判断对应的语句执行后,就忽略掉剩下的elifelse

if判断条件还可以简写,比如写:

if x:
    print('True')

只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False

注意

  • 不要少写了冒号:
  • elifelse if的缩写,完全可以有多个elif

来个例子:

age = input('请输入您的年龄')
if age >  18:
    print('这里的电影随便看')
elif 18 >= age > 6::
    print('你还没有成年呢,不能乱看哦')
else:
    print('小屁孩,太小了')

输入18,结果报错:

Traceback (most recent call last):
  File "/Users/Song/PycharmProjects/test/text.py", line 2, in <module>
    if age >  18:
TypeError: '>' not supported between instances of 'str' and 'int'

这是因为input()返回的数据类型是str,str不能直接和整数比较,必须先把str转换成整数。Python提供了int()函数来完成这件事情:

s = input('请输入您的年龄')
age = int(s)
if age >  18:
    print('这里的电影随便看')
elif 18 >= age > 6::
    print('你还没有成年呢,不能乱看哦')
else:
    print('小屁孩,太小了')

再次运行就可以得到正常结果了。