chapter 5 if 语句

编程时经常需要检查一系列条件,并据此决定采取什么措施。

1、简单示例

cars = ['audi', 'bwm', 'subaru', 'toyota']  # 一个 = 是赋值
for car in cars:
    if car == 'bwm':                        # 两个 == 是比较 结果只会是 True 或 False
        print(car.upper())
    else:
        print(car.title())


# 也可写成

cars = ['audi', 'bwm', 'subaru', 'toyota']
for car in cars:
    if car != 'bwm':                        # != 是不等于
        print(car.title())
    else:
        print(car.upper())

输出是:

再例如:

numbers = list(range(1, 11))
for number in numbers:
    if number >= 5:          # 条件语句中可以包含各种数学比较 大于 > 、小于 < 、大于等于 >= 、小于等于 <=
        print(number)

输出是:

if 是关键字,后面跟的是比较体,正确返回True,否则返回False,如果返回True,则执行if语句里面的语句,否则忽略。

2、检查多个条件

2.1、and 检查多个条件

numbers = list(range(1, 11))
for number in numbers:
    if number >= 5 and number <= 9:  # 只有 and 连接的多个条件表达式同时成立时,才会返回True,有任何一个条件表达式不成立,则返回False
        print(number)
    else:
        print('false ==== ' + str(number))

输出是:

2.2、or 检查多个条件

numbers = list(range(1, 11))
for number in numbers:
    if number == 3 or number == 5 or number == 9:    # or 连接的多个表达式,能满足其中任何一个表达式,就会返回True
        print(number)
    else:
        print('false ==== ' + str(number))

输出是:

2.3 检查特定值是否在列表中

使用  in  和 not in

numbers = list(range(1, 11))
print(11 in numbers)
print(2 in numbers)
print('--------------------')
print(11 not in numbers)
print(2 not in numbers)

输出是:

3、 几种 IF 语句介绍

3.1 简单 if 语句

if conditional_test:
    do something

在第1行中,可包含任何条件测试,而在紧跟在测试后面的缩进代码块中,可执行任何操作。如果条件测试的结果为True,Python就会执行紧跟在 if 语句后面的代码;否则Python将忽略这些代码。

3.2 if - else 语句

if conditional_test:
    do something
else:
    do something

经常需要在条件测试通过了执行一些操作,并在没有通过时执行另一操作;在这种情况下,可使用Python提供的 if-else 语句。if-else语句块类似于简单的 if 语句,单其中的 else 语句让你能够指定条件测试未通过是要执行的操作。

3.3 if-elif-else 结构

if conditional_test:
    do something
elif conditional_test_2:
    do something
elif conditional_test_3:
    do something
        .
        .
        . 
else:
    do something

经常需要检查超过两个的情形,为此可使用Python提供的 if-elis-else 结构。Python只执行 if-elif-else 结构中的一个代码块,他一次检查每个条件测试,直到遇见通过了的条件测试。测试通过后,Python将执行紧跟在他后面的代码,并跳过余下的测试。

numbers = list(range(1, 11))
for number in numbers:
    if number >= 1 and number <= 3:
        print('condition 1 : ' + str(number))
    elif number > 3 and number < 6:            # 可以有多个 elif 条件
        print('condition 2 : ' + str(number))
    else:
        print('condition 3 : ' + str(number))

输出是:

3.4 省略 else 模块

else 模块可以省略

numbers = list(range(1, 11))
for number in numbers:
    if number >= 1 and number <= 3:
        print('condition 1 : ' + str(number))
    elif number > 3 and number < 6:
        print('condition 2 : ' + str(number))

输出是:

3.5  测试多个条件

当在测试多个条件时,也可以连续使用多个 if 语句

numbers = list(range(1, 11))
for number in numbers:
    if number >= 1 and number <= 3:
        print('condition 1 : ' + str(number))
    if number > 3 and number < 6:
        print('condition 2 : ' + str(number))
    if number > 6 and number < 9:
        print('condition 3 : ' + str(number))

输出是:

4、使用 if 语句处理列表

4.1 确定列表不是空的

temp_list = []
if temp_list:
    print('The temp_list is not empty!')
else:
    print('The temp_list is empty!')

输出是:

4.2 使用多个列表

short_numbers = list(range(1, 4))
long_numbers = list(range(1, 8))
for number in short_numbers:
    if number in long_numbers:
        print('In. True')
    else:
        print('Don`t in. False')

输出是:

4.3 设置 if 语句的格式

在条件测试的格式设置方面,PEP 8提供的唯一建议是,在诸如==、>=和<=等比较运算符两边各添加一个空格,例如,if age < 4要比 if age<4 好。这样的空格不会影响Python对代码的解读,而只是让代码阅读起来更容易。

其他的数学运算符如: + - * / ** 等,也建议使用以上建议。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值