查看原文
其他

Python基础编程——if语句篇(一)

JackTian 杰哥的IT之旅 2019-05-08


01

一个简单示例

      下面是一个简短的示例,演示了如何使用if语句来正确地处理特殊情形。假设你有一个汽车的列表,并想将其中每辆汽车的名称打印出来。

     

      对于大多数汽车,都应以首字母大写的方式打印其名称,但对于汽车名“BMW”,应以全大写的方式打印;


       这个示例中的循环首先检查当前的汽车名是否是“BMW”,如果是,就以全大写的方式打印它;否则就以首字母大写的方式打印;


02

条件测试

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

检查是否相等

       大多数条件测试都将一个变量的当前值同特定值进行比较。最简单的条件测试检查变量的值是否与特定值相等;


       首先使用一个等号将car的值设置为‘bmw’,然后在使用两个等号(==)检查car的值是否为‘bmw’。这个相等运算符在它两边的值相等时返回True,否则为False。


如果变量car的值不是‘bmw’,测试结果将返回False:

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

两个大小写不同的值被视为不相等;

如果大小写无关重要,而只想检查变量的值,可将变量的值转换为小写;

         无论值‘Bmw’的大小写如何,上述测试都将返回True,因为该测试不区分大小写。函数lower不会修改存储在变量car中的值,因此这样的比较时不会影响原来的变量;

       第一行代码,首先将首字母大写的字符串‘Bmw’存储在变量car中;第二行代码,我们获取变量car的值并将其转换为小写,再将结果与字符串‘bmw’比较。两个字符相同,则返回值为True。第四行代码,这个条件测试并没有影响存储在变量car中的值;

检查是否不相等

       要判断两个值是否不等,可结合使用j惊叹号和等号(!=),其中的惊叹号表示不;

      上述代码将requested_topping的值与‘anchovies’进行比较,如果不相等,Python将返回True,进而执行紧跟在if语句后面的代码;如果相等,Python将返回False,因此不执行紧跟在if语句后面的代码。

比较数字

检查数值非常简单,例如,下面的代码检查一个人的年龄是否是23岁:

       你还可以检查两个数字是否不等,例如,下面的代码检查提供的答案不正确的信息:answer(25)不是52,因此输入答案错误,请重新填写!

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

检查多个条件

1.使用and检查多个条件

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

       上述红框1代码,首先定义了两个用于存储年龄的变量:age_0和age_1。红框2代码,检查这两个变量是否都大于或等于21;左边的测试通过了,右边没通过,因此整个条件的结果为False。红框3代码,我们将age_1改为23,这样age_1值大于22,两个测试通过了,导致整个条件表达式的结果为True。

2.使用or检查多个条件

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

       首先定义两个用于存储年龄的变量(红框1);由于红框2对age_0的测试通过了,因此整个表达式的结果为True。我们将age_0减小19;在红框3中的测试中,两个测试都没通过,因此整个表达式的结果为False。

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

执行操作前必须检查列表是否包含特定的值。

要判断特定的值是否已包含在列表中,可使用关键字in。

       上述代码,关键字in让Python检查列表requested_toppings是否包含‘mushrooms’和‘pepperoni’。

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

确定特定的值未包含在列表中很重要;这种情况下,可使用关键字not in。

       第一张图的红框代码,如果user的值未包含在列表banned_users中,Python将返回True,进而执行缩进的代码行;

布尔表达式

       随着你对编程的了解越来越深入,将遇到术语布尔表达式,它不过是条件测试的别名。与条件表达式一样,布尔表达式的结果要么为True,要么为False。通常用于记录条件。在跟踪程序状态或程序中重要的条件方面,布尔值提供一种高效的方式。


扫一扫,关注我们
了解更多精选文章哦~

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存