Python入门(六)if语句(一)

作者:xiou

1.概述

编程时经常需要检查一系列条件,并据此决定采取什么措施。在Python中,if语句让你能够检查程序的当前状态,并采取相应的措施。

2.一个简单的实例

下面是一个简短的示例,演示了如何使用if语句来正确地处理特殊情形。

假设你有一个汽车列表,并想将其中每辆汽车的名称打印出来。对于大多数汽车,应以首字母大写的方式打印其名称,但对于汽车名’bmw’,应以全大写的方式打印。下面的代码遍历这个列表,并以首字母大写的方式打印其中的汽车名,不过对于’bmw’,则以全大写的方式打印:

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

  for car in cars:
      if car == 'bmw':
          print(car.upper())
      else:
          print(car.title())

这个示例中的循环首先检查当前的汽车名是否是’bmw’。如果是,就以全大写方式打印,否则以首字母大写的方式打印:

在这里插入图片描述

这个示例涵盖了本章将介绍的很多概念。下面先来介绍可用来在程序中检查条件的测试。

3. 条件测试

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

3.1 检查是否相等

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

  >>> car = 'bmw'
  >>> car == 'bmw'
  True

首先使用一个等号将car的值设置为’bmw’,这种做法你已经见过很多次。接下来,使用两个等号(==)检查car的值是否为’bmw’。这个相等运算符在两边的值相等时返回True,否则返回False。在本例中,两边的值相等,因此Python返回True。

  >>> car = 'audi'
  >>> car == 'bmw'
  False

一个等号是陈述,两个等号则是发问,变量car的值是’bmw’吗?大多数编程语言使用等号的方式与这里演示的相同。

3.2 数值比较

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

>>> age = 18
>>> age == 18
True

还可检查两个数是否不等。例如,下面的代码在提供的答案不正确时打印一条消息:

  answer = 17
  if answer != 42:
      print("That is not the correct answer. Please try again!")

answer的值(17)不是42,条件得到满足,因此缩进的代码块得以执行:

在这里插入图片描述

3.3 检查多个条件

你可能想同时检查多个条件。例如,有时候需要在两个条件都为True时才执行相应的操作,而有时候只要求一个条件为True。在这些情况下,关键字and和or可助你一臂之力。

(1)使用and检查多个条件

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

(2)使用or检查多个条件

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

3.4 布尔表达式

随着你对编程的了解越来越深入,将遇到术语布尔表达式,它不过是条件测试的别名。与条件表达式一样,布尔表达式的结果要么为True,要么为False。

布尔值通常用于记录条件,如游戏是否正在运行,或者用户是否可以编辑网站的特定内容:

game_active = True
can_edit = False

在跟踪程序状态或程序中重要的条件方面,布尔值提供了一种高效的方式。

posted @ 2023-05-13 09:04  小幽余生不加糖  阅读(6)  评论(0编辑  收藏  举报  来源