Python萌新强化总结4:if语句

    xiaoxiao2022-07-05  196

    根据《Python编程从入门到实践》学习强化总结 编程时经常需要检查一系列条件,并据此决定采取什么措施。在Python中,if语句让你能够检查程序当前状态,并据此采取相应的措施。 一个简单的示例:

    cars = ['audi', 'bmw', 'subaru', 'toyota'] for car in cars: if car == 'bmw': print(car.upper()) else: print(car.title()) 输出如下: Audi BMW Subaru Touota

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

    在上述代码中,使用了两个等号(==)检查car的值是否为’bmw’。这个相等运算符在它两边的值相等时返回True,否则返回False。 1、要判断两个值是否不等,可结合使用惊叹号和等号(!=),其中惊叹号表示不。

    2、条件语句中可以使用各种数学比较。比如大于、小于、小于等于、大于等于。 3、还可以使用and和or来检查多个条件: (1)and是需要两个条件都为True时才执行

    age_0 = 22 age_1 = 18 age_0 >=21 and age_1 <= 21 输出如下: False age_1 = 22 age_0 >= 21 and age_1 >=21 输出如下: True

    (2)关键字or也可以检查多个条件,但要至少有一个条件满足,就能通过整个测试。仅当两个测试都没有通过时,使用or的表达式才为False。

    age_0 = 22 age_1 = 18 age_0 > = 21 or age_1 >= 21 输出如下: True age_0 = 18 age_0 >= 21 or age_1 >= 21 输出如下: False

    4、用in检查特定值是否包含在列表中

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

    5、用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.

    6、布尔表达式 布尔表达式是条件测试的别名,与条件表达式一样,布尔表达式的结果要么为True,要么为False。

    二、if语句 1、简单的if语句

    age = 19 if age >= 18: print("You are old enough to vote!") 输出如下: You are old enough to vote!

    在if语句中,缩进的作用于for循环中相同。如果测试通过了,将执行if语句后面所有的缩进的代码行,否则将忽略它们。 2、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 yong to vote.") print("Please, register to vote as soon as you turn 18!") 输出如下: Sorry, you are too yong to vote. Please, register to vote as soon as you turn 18!

    上述代码只存在两种情形:要么够投票年龄,要么不够。if-else结构非常适合用于要让Python执行两种操作之一的情形。在这种简单的if- else结构中,总是会执行两个中的一个。 3、当需要检查超过两个的情形,可使用Python提供的if-elif-else结构。Python只执行if-elif-else 结构中的一个代码块,它依次检查每个条件测试,直到遇到了通过了的条件测试。测试通过后,Python将执行紧跟在它后面的代码,并跳过余下的测试。

    age = 12 if age < 4: print("Your admission cost is $0.") elif age <18: print("Your admission cost is $5.") else: print("Your admission cost is $10.") 输出如下: Your admission cost is $5.

    为让代码更简洁,可不在if-elif-else代码块中打印门票价格,而只在其中设置门票价格,并在它后面添加一条简单的print语句:

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

    这些代码输出与前一个示例相同,但if-elif-else结构的作用更小,它只确定门票价格,而不是在确定门票价格的同时打印一条消息。除了效率更高外,这些修订后的代码还更容易修改;要调整输出消息的内容,只需修改一条而不是三条print语句。

    4、可根据需要使用任意数量的elif代码块。也可省略else代码块。

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

    else是一条包罗万象的语句,只要不满足任何if或elif中的条件测试,其中的代码就会执行,这可能会引入无效甚至恶意的数据。如果知道最终要测试的条件,应考虑使用一个elif代码块来代替else代码块。 5、测试多个条件 if-elif-else结构功能强大,但仅适合用于只有一个条件满足的情况:遇到通过了的测试后,Python就跳过了余下测试。然而。有时候必须检查你所关心的所有条件。在这种情况下,应使用一系列不包含elif和else代码块的简单if语句。

    最新回复(0)