— A single spark can start a prairie fire.
目录
一、if 语句示例
在编程时,我们常常需要检测一系列条件,并根据条件采取相应措施。if语句则能够满足这样的要求。
# 示例
players = ['stephen curry', 'Klay Thompson', 'Andrew Wiggins']
for name in players:
if name.lower() == 'stephen curry': # 注意缩进
print('%s was born in Akron, Ohio, USA on March 14, 1988.'%(name.title())) # 注意缩进
else:
continue
# 运行输出结果
Stephen Curry was born in Akron, Ohio, USA on March 14, 1988.
接下来我们详细讲解 if 语句的基本知识。
二、if语句的条件
if语句的核心是一个值为True或False的表达式,表达式被称为测试条件。若测试条件值为True则执行if后面的代码,若为False则忽略后面的代码。
2.1 判断是否相等
== : 判断是否相等
!= : 判断是否不相等
2.1.1 判断字符串相等
# 示例
player = 'stephen curry'
print(player == 'stephen curry')
print(player == 'Stephen Curry')
print(player != 'Stephen Curry')
# 运行输出结果
True
False
True
注意两点:
1)其中 = 表示陈述,可理解为将变量player的值设置为’stephen curry’。而 == 表示疑问,理解为变量player的值是’stephen curry’吗?
2)在字符串的比较过程中,区分字母的大小写。
2.1.2 判断数值相等
数值判断除了 == 和 != ,还有:
小于(<)、小于等于(<=)、大于(>)、大于等于(>=)。
2.2 多个条件比较
有时你需要判断多个条件,例如你需要满足多个条件(高富帅等等)才进一步执行相应操作。在这些情况中and和or可助你一臂之力。
and :所有条件都为True 整个表达式才为True,有一个为False,整个表达式为False.
or:至少一个为True 整个表达式才为True。
# 示例
player = 'Stephen Curry'
first_name = 'Stephen'
last_name = 'Curry'
print(first_name == 'Stephen' and last_name == 'Curry')
print(first_name == 'stephen' and last_name == 'Curry') # 把大S写成小s
print(first_name == 'stephen' or last_name == 'Curry') # 把大S写成小s, and 改成 or
print(first_name == 'stephen' or last_name == 'curry')
# 运行输出结果
True
False
True
False
2.3 值是否包含在列表中
有时需要判断列表中是否包含特定的值,可使用关键字 in 或者 not in 进行检查。
# 示例
players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins']
print('Stephen Curry' in players)
print('stephen curry' in players) # 区分大小写
print('stephen curry' not in players)
# 运行输出结果
True
False
True
2.4 判断变量的数据类型
python数据类型:数字(int)、浮点(float)、字符串(str),列表(list)、元组(tuple)、字典(dict)、集合(set)。
通过函数 isinstance(参数1,参数2) 进行变量数据类型的判断,其中:参数1:变量;参数2:可以是直接或间接类名、基本类型或者由它们组成的元组。判断变量的数据类型。
# 示例
players = 'stephen curry'
print(isinstance(players, list))
players = ['stephen curry']
print(isinstance(players, list))
# 运行输出结果
False
True
2.5 布尔表达式
布尔表达式,即条件表达式的别名。有两种结果:Ture 和 False
# 示例
active = False
print(isinstance(active, bool))
print(active)
# 注意下面这种情况
active = 'False'
print(isinstance(active, bool))
if active:
print(True)
# 运行输出结果
True
False
False
True
三、if语句
理解完条件表达式后,开始写 if 语句。
3.1 简单 if
# 示例 if 语句
if 条件语句:
满足条件的执行语句 # 注意缩进
if语句中缩进的作用与for循环的相同。若条件表达式为True则执行后面所有缩进的代码。
3.2 if-else 语句
常常需要通过条件执行一个操作,没通过条件执行另一个操作,则需要用到 if-else 语句
# 示例 if-else语句
if 条件语句:
满足条件的执行语句 # 注意缩进
else:
不满足条件的执行语句 # 注意缩进
若条件表达式为True则执行其后面所有缩进的代码,若条件表达式为False,则执行else后面所有缩进的代码。
3.3 if-elif-else 语句
若判断条件情况超过两个,则需要使用if-elif-else 语句。
# 示例 if-elif-else语句
if 条件情况1语句:
满足条件的执行语句 # 注意缩进
elif 条件情况2语句:
满足条件的执行语句 # 注意缩进
elif 条件情况3语句:
满足条件的执行语句 # 注意缩进
else:
不满足条件的执行语句 # 注意缩进
当条件通过时,执行相应满足条件的语句,并跳过后面的语句。当前面条件不满足时,依次往下面判断。
3.4 省略else
并不要求if 或 elif 后面必须要else,不必要时,可以省略。通常else会包罗更多的情况,容易产生无效甚至恶意的数据。应尽可能使用 elif 替代。
# 示例
if 条件情况1语句:
满足条件的执行语句 # 注意缩进
elif 条件情况2语句:
满足条件的执行语句 # 注意缩进
3.5 多个条件
if-elif-else适用于判断一个条件的多种情况,当遇到多种条件时,则需要多个 if 进行判断
# 示例
if 条件1语句:
满足条件的执行语句 # 注意缩进
if 条件2语句:
满足条件的执行语句 # 注意缩进
if 条件3语句:
满足条件的执行语句 # 注意缩进
四、if 处理列表
结合 if 使用列表,可以完成一些特殊处理。
4.1 判断列表元素
# 示例
Warriors = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins'] # 定义一个列表
Clippers = ['Kawhi Leonard','Paul George'] # 再定义一个列表
players = ['Stephen Curry', 'Klay Thompson', 'Andrew Wiggins', 'Kawhi Leonard','Paul George','Michael Jordan'] # 又来定义一个列表
for player in players:
if player in Warriors:
print('%s is a Golden State Warriors player.' % (player))
elif player in Clippers:
print('%s is a Los Angeles Clippers player.'%(player))
else:
print('%s is is not a Golden State Warriors or Los Angeles Clippers player.' % (player))
# 运行输出结果
Stephen Curry is a Golden State Warriors player.
Klay Thompson is a Golden State Warriors player.
Andrew Wiggins is a Golden State Warriors player.
Kawhi Leonard is a Los Angeles Clippers player.
Paul George is a Los Angeles Clippers player.
Michael Jordan is not a Golden State Warriors or Los Angeles Clippers player.
4.2 空列表
判断空列表返回为False,列表至少包含一个元素则返回True。
# 示例
players = [] # 定义一个空列表
if players:
players.append('Stephen Curry')
print(players)
# 运行输出结果
[]
结果返回的还是空列表,说明没有添加’Stephen Curry’,即 if 判断语句结果为 False 。
五、完结
🌹🌹🌹撒花啦🌹🌹🌹
If you feel happy, clap your hands.👏👏👏