【Python】if 条件控制专题

个人主页:Nezuko627的博客主页
❤️ 支持我: 点赞 收藏 关注
格言:立志做一个有思想的程序员
作者介绍:本人本科软件工程在读,博客主要涉及JavaSE、JavaEE、MySQL、SpringBoot、算法等知识。专栏内容长期更新,如有错误,欢迎评论区或者私信指正!感谢大家的支持~~~

本文来自专栏:Python基础教程
欢迎点击支持订阅专栏 ❤️
【Python】if 条件控制专题_第1张图片

文章目录

  • 一 条件测试
    • 1.检查是否相等
    • 2.检查是否相等时不考虑大小写
    • 3.检查是否不相等
    • 4.比较数字
    • 5.检查多个条件
      • 1.使用and检查多个文件
      • 2.使用or检查多个文件
    • 6.检查特定值是否包含在列表中
    • 7.检查特定值是否不包含在列表中
  • 二 if语句
    • 1.if - else 语句
    • 2.if - elif - else结构
    • 3.测试多个条件
  • 三 使用if语句处理列表
    • 1.检查特殊元素
    • 2.确定列表不是空的
    • 3.使用多个列表
  • 写在最后


一 条件测试

​ 每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。如果条件测试的值为True,Python就执行紧跟在if语句后面的代码;如果为False,Python就忽略这些代码。

1.检查是否相等

​ 大多数条件测试都将一个变量的当前值同特定值进行比较。最简单的条件测试检查变量的值是否与特定值相等,运行代码如下:

# 检查是否相等
car = 'bmw'
print(car == 'bmw')
print(car == 'other')

​ 运行结果如下:

True
False

2.检查是否相等时不考虑大小写

​ 在Python中检查是否相等时区分大小写,例如,两个大小写不同的值会被视为不相等:

# 仅首字母的大小写不同
car = 'bmw'
print(car == 'Bmw')

​ 运行结果如下:

False

​ 如果大小写很重要,这种行为有其优点。但如果大小写无关紧要,而只想检查变量的值,可将变量的值转换为小写,再进行比较:

# 仅首字母的大小写不同,调用方法使其所有字母转化为小写
car = 'Bmw'
print(car.lower() == 'bmw')

​ 运行结果如下:

True

3.检查是否不相等

​ 要判断两个值是否不相等,可结合使用惊叹号和等号,其中惊叹号表示不,与大部分编程语言一样。下面再使用一条if语句来演示如何使用不等运算符。我们将把要求的比萨配料存储在一个变量中,再打印一条消息,指出顾客要求的配料是否是小银鱼(anchovies):

requested_topping = 'mushrooms'
if requested_topping != 'anchovies':
    print("Hold the anchovies!")

​ 运行结果如下:

Hold the anchovies!

4.比较数字

​ 条件语句中可包含各种数字比较,如小于、小于等于、大于、大于等于:

age = 19
age < 21  # True
age <= 21  # True
age > 21  # False
age >= 21  # False

5.检查多个条件

1.使用and检查多个文件

​ 要检查是否两个条件都为True,可使用关键字and将两个条件测试合而为一;如果每个测试都通过了,则整个表达式就为True;如果至少有一个测试没有通过,则整个表达式为False。

​ 例如,要检查是否两个人都不小于21岁,可使用下面的测试:

age_0 = 22
age_1 = 18
age_0 >= 21 and age_1 >=21  # False

2.使用or检查多个文件

​ 关键字or也能够让你检查多个文件,但只要至少有一个条件满足,就能通过整个测试。仅当两个测试都没有通过的时候,使用or表达式才为False。

6.检查特定值是否包含在列表中

​ 要判断特定的值是否已经包含在用户名列表中,可使用关键字in。你可能为比萨店编写一些代码;这些代码首先创建一个列表,其中包含用户点的比萨配料,然后检查特定的配料是否包含在该列表中:

requested_toppings = ['mushrooms', 'onions', 'pineapple']
'mushrooms' in requested_toppings  # True
'pepperoni' in requested_toppings  # False

7.检查特定值是否不包含在列表中

​ 这里可以使用关键字not in。例如,如果有一个列表,其中包含被禁止在论坛上发表评论的用户,就可以在允许用户提交评论前检查他是否被禁言:

banned_users = ['andrew', 'carolina', 'david']
user = 'marie'
if user not in banned_users:
    print(user.title() + ", you can post a response if you wish.")

运行结果如下:

 Marie, you can post a response if you wish.

二 if语句

1.if - else 语句

​ 经常需要在条件测试通过时执行一个操作,并在没有通过测试时执行另一个操作;在这种情况下,可使用Python提供的if-else 语句。if-else 语句类似于简单的if语句,但其中的else语句让你能够在指定条件测试未通过时要执行的操作。下面的代码在一个人够投票的年龄时显示与前面相同的消息,同时在这个人不够投票年龄时也显示一条消息:

age = 17
if age >= 18:
    print("You are old enough to vote!")
    print("Have you registered to vote yet?")
else:
    print("Sorry, you are too young to vote.")
    print("Please register to vote as soon as you turn 18!")

age小于18,条件测试未通过,因此执行else代码块中的代码:

Sorry, you are too young to vote.
Please register to vote as soon as you turn 18!

2.if - elif - else结构

​ Python只执行if-elif-else结构中的一个代码块,它依次检查每个条件测试,直到遇到通过了的条件测试。测试通过后,Python将执行紧跟在它后面的代码,并跳过余下的测试。

​ 在现实生活中,很多情况需要考虑的情形都超过两个。例如,来看一个根据年龄段收费的游乐场:

  • 4岁以下免费;
  • 4 ~ 18岁收费5美元;
  • 18岁(含)以上收费10美元。

​ 如果只使用一条if语句确定门票的价格:

age = 12
if age < 4:
    price = 0
elif age < 18:
    price = 5
else:
    price = 10
print("Your admission cost is $" + str(price) + ".")

运行结果如下:

Your admission cost is $5.

3.测试多个条件

​ 在这里不作赘述,如果你只想执行一个代码块,就使用if - elif - else结构;如果要运行多个代码块,就使用一系列独立的if语句。


三 使用if语句处理列表

1.检查特殊元素

​ 在这里我们通过前面的比萨店示例研究如何检查列表中的特殊值,并对其做合适的处理。这家比萨店在制作比萨时,每添加一种配料都打印一条消息。通过创建一个列表,在其中包含顾客点的配料,并使用一个循环来指出添加到比萨中的配料,可以以极高的效率编写这样的代码:

requested_toppings = ['mushrooms', 'green peppers', 'extra cheese']
for requested_topping in requested_toppings:
    print("Adding " + requested_topping + ".")
print("\nFinished making your pizza!")

运行结果如下:

Adding mushrooms.
Adding green peppers.
Adding extra cheese.

Finished making your pizza!

​ 然而,如果比萨店的青椒用完了,该如何处理呢?于是,我们可以在for循环中包含一条if语句:

requested_toppings = ['mushrooms', 'green peppers', 'extra cheese']
for requested_topping in requested_toppings:
    if requested_topping == 'green peppers':
        print("Sorry, we are out of green peppers right now.")
    else:
        print("Adding " + requested_topping + ".")
print("\nFinished making your pizza!")

运行结果如下:

Adding mushrooms.
Sorry, we are out of green peppers right now.
Adding extra cheese.

Finished making your pizza!

2.确定列表不是空的

​ 下面在制作比萨前检查顾客点的配料列表是否为空。如果列表为空,就向顾客询问是否要点普通比萨;如果列表不为空,就像前面的示例那样制作比萨:

requested_toppings = []
if requested_toppings:
    for requested_topping in requested_toppings:
        print("Adding " + requested_topping + ".")
    print("\nFinished making your pizza!")
else:
    print("Are you sure you want a plain pizza?")

运行结果如下:

Are you sure you want a plain pizza?

3.使用多个列表

​ 顾客的要求往往五花八门,在比萨配料方面尤其如此。如果顾客要在比萨中添加炸薯条,该怎么办呢?可使用列表和if语句来确定能否满足顾客的要求。

​ 来看看在制作比萨前如何拒绝怪异的配料要求。下面的示例定义了两个列表,其中第一个列表包含比萨店供应的配料,而第二个列表包含顾客点的配料。这次对于requested_toppings中的每个元素,都检查它是否是比萨店供应的配料,再决定是否在比萨中添加它:

available_toppings = ['mushrooms', 'olives', 'green peppers',
                     'pepperoni', 'pineapple', 'extra cheese']
requested_toppings = ['mushrooms', 'french fries', 'extra cheese']
for requested_topping in requested_toppings:
    if requested_topping in available_toppings:
        print("Adding " + requested_topping + ".")
    else:
        print("Sorry, we don't have " + requested_topping + ".")
print("\nFinished making your pizza!")

运行结果如下:

Adding mushrooms.
Sorry, we don't have french fries.
Adding extra cheese.

Finished making your pizza!

写在最后

以上便是本文的全部内容啦,后续内容将会持续免费更新,如果文章对你有所帮助,麻烦动动小手点个赞 + 关注,非常感谢 ❤️ ❤️ ❤️ !
如果有问题,欢迎私信或者评论区!
【Python】if 条件控制专题_第2张图片

共勉:“你间歇性的努力和蒙混过日子,都是对之前努力的清零。”
在这里插入图片描述

你可能感兴趣的:(Python基础,python,开发语言)