Python if 语句套入 Shell if 语句的逻辑即可,只需要学习语法,很简单
每条 if 语句的核心都是一个值为 True 或 False 的表达式,这种表达式被称为条件测试,Shell 中将条件表达式放入了方框中 [ ]
,而 Python 不需要
条件测试
是否相等
Python 中使用等号赋值,双等号作比较
name = "feiyi"
print(name == "feiyi")
---
# 运行结果
True
不等则为 False
条件测试忽略大小写
name = "Feiyi"
print(name == "feiyi")
print(name.lower() == "feiyi")
---
# 运行结果
False
True
是否不相等
name = "Feiyi"
print(name != "mupei")
---
# 运行结果
True
数字比较
除了上述的 == 和 != 可以使用外,数字比较还可以使用 >、>=、<、<=
检查多个条件
and:将两个测试条件合二为一,结果都为 True 则通过,只要有一个为 False 则失败
age1 = 18
age2 = 22
print(age1 == 18 and age2 == 22)
print(age1 == 18 and age2 != 22)
---
# 运行结果
True
False
or:相比 and 来说,or 的条件比较宽松,多个表达式,只要有一个为 True 则通过,除非全部为 False
age1 = 18
age2 = 22
print(age1 != 18 or age2 != 22)
print(age1 == 18 or age2 != 22)
---
# 运行结果
False
True
为了展示美观,可以将每个表达式放入括号内,增加可读性
(age1 != 18) and (age2 != 22)
(age1 == 18) or (age2 != 22)
判断列表值
条件判断也支持判断某值是否在列表中
fruits = ['apple', 'pear', 'orange', 'banana', 'core']
print('apple' in fruits)
print('apple' not in fruits)
---
# 运行结果
True
False
if 语句
与 Shell 一样,分为单分支,双分支,多分支
单分支
age = 25
if age >= 25:
print('OK')
---
# 运行结果
OK
双分支
age = 25
if age >= 27:
print('OK')
else:
print('NO')
---
# 运行结果
NO
多分支
age = 25
if age < 25:
print('小于')
elif age == 25:
print('等于')
elif age > 25:
print('大于')
else:
print('其他')
---
# 运行结果
等于
判断列表是否为空
对于 if 来说,列表为空就是 False,列表有值即为 True
fruits = []
if fruits:
print('frutis 列表不为空')
else:
print('列表为空')
---
# 运行结果
列表为空