前言

学习一门语言最好的办法,就是教懂别人。在这里,我会从 Python 最基础的教程写起,慢慢一步步进阶。Python 基础比较好的欢迎在本博客的文章里看看爬虫实战项目,欢迎指教。

人在选择时会做出自己的判断,计算机也可以,但是我们必须赋予她能做出判断的能力,我们可以用 if 语句让她在选择面前做出判断。

基本格式

Python

if

执行语句


if 条件:

执行语句

条件后面要用英文冒号,执行语句在 if 语句下面需要缩进,一般是 4 格。

当 if 后面条件为 True 时就会执行下面的可执行语句。

Python

if 条件:

执行语句


if条件:

执行语句

如果 if 后的条件判断为 False 时,则不会执行语句。

Python
if 'brucepk' == 'brucepk':
print('pk 哥很帅!!!')
#输出结果
pk 哥很帅!!!
if'brucepk'=='brucepk':
print('pk 哥很帅!!!')
#输出结果

pk哥很帅!!!

这时的结果是空的,因为条件为 False。

多条件判断

当有多个条件时,加入elif 做更细致的判断,elif 是else if 的缩写。

我们拿联合国世界卫生组织对年龄的划分标准举栗。

Python
age = 25
if age <= 0:
print('请输入大于 0 的数字')
elif age > 0 and age < 45:
print('你是青年人')
elif age >= 45 and age <= 59:
print('你是中年人')
elif age >= 60 and age <= 74:
print('年轻的老人')
elif age >= 75 and age <= 89:
print('你是老年人')
else:
print('你是长寿老人')
#输出结果:

你是青年人

age=25
ifage<=0:
print('请输入大于 0 的数字')
elifage>0andage<45:
print('你是青年人')
elifage>=45andage<=59:
print('你是中年人')
elifage>=60andage<=74:
print('年轻的老人')
elifage>=75andage<=89:
print('你是老年人')
else:
print('你是长寿老人')
#输出结果:

你是青年人

当然,我们增强用户体验,我们可以让用户主动输入 age 的值。

Python
age = input("请输入年龄:")
age = int(age)
if age <= 0:
print('请输入大于 0 的数字')
elif age > 0 and age < 45:
print('你是青年人')
elif age >= 45 and age <= 59:
print('你是中年人')
elif age >= 60 and age <= 74:
print('年轻的老人')
elif age >= 75 and age <= 89:
print('你是老年人')
else:
print('你是长寿老人')
#输出结果:

请输入年龄:46

你是中年人

age=input("请输入年龄:")
age=int(age)
ifage<=0:
print('请输入大于 0 的数字')
elifage>0andage<45:
print('你是青年人')
elifage>=45andage<=59:
print('你是中年人')
elifage>=60andage<=74:
print('年轻的老人')
elifage>=75andage<=89:
print('你是老年人')
else:
print('你是长寿老人')
#输出结果:

请输入年龄:46

你是中年人

这个 46 是用户输入的,根据用户输入的数值来做 if 判断。

这里需要注意下类型的转化,input() 函数接受一个标准输入数据,返回为 string 类型。所以我们要把它转化为 int,只有同为 int 类型的数据才能进行比较,不然就会报错了。

最后一个条件用了 else,他表示如果上面条件都不符合时,就执行这个语句。

执行顺序

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

请看下面的栗子:

Python
age = 23
if age >= 6:
print('青少年')
elif age >= 18:
print('成年人')
else:
print('小屁孩')
age=23
ifage>=6:
print('青少年')
elifage>=18:
print('成年人')
else:
print('小屁孩')

大家看看,这个输出结果是多少呢?

答案是:青少年,因为它是从上往下判断,第一个符合条件,返回为 True,剩下的就不管了。

执行条件简写

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

Python
x = 2
if x:
print('True')
else:
print('False')

输出:

True
x=2
ifx:
print('True')
else:
print('False')

输出:

True

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

Python
x = []
if x:
print('True')
else:
print('False')

输出:

False
x=[]
ifx:
print('True')
else:
print('False')

输出:

False

这里 x 是空列表,所有执行结果是 False。