likes
comments
collection
share

Python 教程 - 条件判断

作者站长头像
站长
· 阅读数 4

学过了前面内容之后,我们已经掌握了 Python的 基本数据类型。接下来,我们要学习条件判断,也就是让程序能够根据不同的条件执行不同的操作。在 Python 语言中,我们使用 ifelseelif 这三种结构来实现各种条件判断和流程控制。

Python程序是逐行执行的,所以当我们希望程序在某些条件下跳过某些代码时,就可以使用条件判断。也就是说,如果想让程序自动检查处理的数据内容,并根据数据内容决定是否执行某个操作,就需要用到条件判断来控制流程。

if 语句

当程序执行过程中需要根据某个条件来决定是否执行后续操作时,就需要使用 if 语句。

if condition:
    statement

注意,statement 前面有四个空格,这叫做缩进。Python 程序中的代码块(例如函数体、循环、条件判断、类定义等)不是通过花括号来标识范围,而是通过行尾的冒号 (:) 和下一行的缩进来划分代码块的边界。在 Python 中,我们通过缩进来判断代码属于哪一层级。同一层次的代码块应该有相同的缩进级别,不同层次的代码块则需要增加额外的缩进以表示嵌套关系。

在上述语法中,如果判断条件为真,则执行缩进下的语句;否则,不执行。例如:

score = int(input("请输入成绩"))
if score >= 60:
    print("成绩及格!")

执行结果如下:

Python 教程 - 条件判断

input() 这个函数可以用来让程序接收用户输入。当一个变量被赋值为 input() 的结果时,默认类型为字符串。

if-else 语句

if 语句可以与else 配合使用,让程序在 if 条件不成立时执行 else 下定义的操作。也就是说,当判断条件为真时执行某个操作,条件不成立时执行另外的操作。其语法如下:

if condition:
    statement1 for True condition
else:
    statement2 for False condition

在上述语法中,若 condition 为真 (True),则执行 statement1;反之,则执行 statement2。例如:

score = int(input("score:"))
if score >= 60:
    print("成绩及格!")
else:
    print("不及格!")

执行结果如下:

Python 教程 - 条件判断

当输入的成绩大于等于 60 时,执行 if 内的语句,即打印“成绩及格!”

Python 教程 - 条件判断

否则执行else 内的语句,即打印“不及格!”。

如果想写个程序,打印输入的两个数字中较大的那个,代码如下:

a = input("a: ")
b = input("b: ")
if a > b:
    print("max: ", a)
else
    print("max: ", b)

执行结果如下:

Python 教程 - 条件判断

if-elif-else 语句

有时候需要判断的情况有很多种,这时就可以使用 if-elif-else 结构来描述我们的需求。语法如下:

if condition1:
    statement1 for True Condition1
elif condition2 :
    statement2 for True Condition2
elif condition3 :
    statement3 for True Condition3
else:
    statements for Each Condition False

elif 的数量没有限制,可以根据需要自定义。

下面是将输入成绩区分为 A, B, C, D 和 F 等 5 个等级的例子:

score = int(input("score: "))
if score >= 90:
    print('Grade is: A')
elif score >= 80:
    print('Grade is: B')
elif score >= 70:
    print('Grade is: C')
elif score >= 60:
    print('Grade is: D')
else:
    print('Grade is: F')

执行结果如下:

Python 教程 - 条件判断

嵌套if语句

当我们需要在条件判断中进一步判断条件时,就需要使用嵌套if结构。所谓的嵌套if语句是指在 if-else 结构中,还有另一组 if-else 结构。例如:

# 定义一个年龄变量
age = int(input())

# 使用嵌套if判断年龄区间并输出相应的信息
if age >= 0:
    if age < 13:
        print("你是儿童")
    elif age < 18:
        print("你是青少年")
    else:
        if age < 60:
            print("你是成年人")
        else:
            print("你是老年人")
else:
    print("输入的年龄无效,请输入非负整数。")

执行结果如下:

Python 教程 - 条件判断

经过这次的学习,现在我们的程序已经能够在不同条件下执行不同动作了。下一讲将会介绍另一个重要概念—循环。在处理数据时,如果需要重复执行某些相同步骤,就会使用循环,让指定的代码段在条件满足的情况下重复执行。