Python入门: (3)if语句

223 阅读2分钟

1. 简单事例

cars = ['audi', 'bmw', 'subaru', 'toyota']

for car in cars:
    if car == 'bmw':  # 检查当前车名是否为bmw
        print(car.upper())  # 如果是,以全大写方式打印
    else:
        print(car.title())  # 否则,以首字母大写方式打印

2. 条件测试

  • 每条if语句的核心都是一个值为TrueFalse的表达式,即 条件测试 ,亦即 布尔表达式
  • Python根据条件测试的值为True还是False来决定是否执行if语句中的代码

检查是否相等/不相等

car = 'BMW'  # 将'BMW'赋值给car
car == 'BMW'  # 用 == 检查变量car的值与'BMW'是否相等
car != 'BMW'  # 用 != 检查变量car的值与'BMW'是否不相等

检查是否相等时忽略大小写

  • 网站常采用类似的方式让用户输入的数据符合特定的格式
car.lower() == 'bmw'  # 方法lower()将car变量的字符串值都转换为小写

检查多个条件

a, b = 6, 7
(a >= 5) and (b <= 9)  # 关键字and将两个条件测试合二为一。只有当每个测试都为True时,整个表达式才为True
(a >= 7) or (b <= 6)  # 关键字or将两个条件测试合二为一。只有当每个测试都为False时,整个表达式才为False

检查特定值是否包含/未包含在列表中

banned_users = ['andrew', 'carolina', 'david']
user = 'Jack'
if user in banned_users:  # 关键字in判断特定的值是否已包含在列表中
    print(f"User '{user}' is banned.")
if user not in banned_users:  # 关键字not in判断特定的值是否未包含在列表中
    print(f"User '{user}' is allowed.")

3. if语句

简单的if语句

if conditional_test:
    do something

if-else语句

if conditional_test:
    do something
else:
    do other things

if-elif-else结构

if conditional_test1:
    do a_thing
elif conditional_test2:
    do b_thing
elif conditional_test3:
    do c_thing
else:
    do other things

省略else代码块

  • 如果知道最终要测试的条件,应考虑使用一个elif代码块来代替else代码块,这样可以避免引入无效甚至恶意数据
if-elif-else结构
if conditional_test1:
    do a_thing
elif conditional_test2:
    do b_thing
elif conditional_test3:
    do c_thing
elif conditional_test4:
    do d_thing

测试多个条件

  • 想执行一个代码块,就使用if-elif-else结构
  • 想执行多个代码块,就使用一系列独立的if语句

文章中的所有代码经测试均可成功编译运行,可直接复制。具有显然结果或简单结论的代码不展示运行结果。如有问题欢迎随时交流~