if语法 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: ![](https://secu
Python条件语句
发布时间: 2025-07-21 (a year ago)
Python

if语法

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

可以通过下图来简单了解条件语句的执行过程:

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

Python 编程中 if 语句用于控制程序的执行,基本形式为:

Python 复制代码
if 判断条件:
    语句1……
else:
    语句2……

语句1就是if判断条件成立所执行的语句

那么判断条件不成立,就执行else下的语句2

在python中,使用缩进来表示层级关系

Python 复制代码
if 5>2:
    print("条件成立","执行语句1")
else:
    print('条件不成立',"执行语句2")
# 条件成立 执行语句1 

if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示其关系。

当判断条件为多个值时,可以使用以下形式:

Python 复制代码
if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

如下例:

Python 复制代码
# 根据分数判断等级
score = int(input("请输入你的成绩:"))
if score &gt;=60 and score &lt;80:
    print("成绩及格")
elif score&gt;=80 and score &lt;90:
    print("成绩良好")
elif score&gt;=90 and score &lt;=100:
    print("成绩优秀")
else:
    print("成绩不及格")
    
# 输入 50  输出成绩不及格
# 输入 88  输出成绩良好

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以

  1. 使用 or (或),表示两个条件有一个成立时判断条件成功
  2. 使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行

此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断


你也可以在同一行的位置上使用if条件判断语句和输出语句,如下:

Python 复制代码
# 根据分数判断等级
score = int(input("请输入你的成绩:"))
if score &gt;=60 and score &lt;80: print("成绩及格")
elif score&gt;=80 and score &lt;90: print("成绩良好")
elif score&gt;=90 and score &lt;=100: print("成绩优秀")
else: print("成绩不及格")
    
# 输入 50  输出成绩不及格
# 输入 88  输出成绩良好

if嵌套

Python 中,if、if else 和 if elif else 之间可以相互嵌套。因此,在开发程序时,需要根据场景需要,选择合适的嵌套方案。需要注意的是,在相互嵌套时,一定要严格遵守不同级别代码块的缩进规范。

例如,在最简单的 if 语句中嵌套 if else 语句,形式如下:

Python 复制代码
if 表达式 1:
  if 表示式 2:
    代码块 1
  else:
    代码块 2

又或者,在 if else 语句中嵌套 if else 语句,形式如下:

Python 复制代码
if 表示式 1:
    if 表达式 2:
        代码块 1
    else:
        代码块 2
else:
    if 表达式 3:
        代码块 3
    else:
        代码块 4

【实例】判断是否为酒后驾车
如果规定,车辆驾驶员的血液酒精含量小于 20mg/100ml 不构成酒驾;酒精含量大于或等于 20mg/100ml 为酒驾;酒精含量大于或等于 80mg/100ml 为醉驾。先编写 Python 程序判断是否为酒后驾车。

于是我们使用if嵌套来实现这个需求:

Python 复制代码
proof = int(input("输入驾驶员每 100ml 血液酒精的含量:"))
if proof &lt; 20:
    print("驾驶员不构成酒驾")
else:
    if proof &lt; 80:
        print("驾驶员已构成酒驾")
    else:
        print("驾驶员已构成醉驾")

又或者使用if嵌套改进我们的得分评判系统:

Python 复制代码
score = int(input("请输入你的成绩:"))
if score &gt;= 60:
    if score&gt;=80:
        if score&gt;=90:
            print("成绩优秀")
        else:
            print("成绩良好")
    else:
        print("成绩及格")
else:
    print("成绩不及格")
# 这次我们实现的是三重嵌套 

三目运算

Python 可通过 if 语句来实现三目运算符的功能,因此可以近似地把这种 if 语句当成三目运算符。作为三目运算符的 if 语句的语法格式如下:

Python 复制代码
True_code if decide else False_code

三目运算符的规则是:先对逻辑表达式 expression 求值,如果逻辑表达式返回 True,则执行并返回 True_statements 的值;如果逻辑表达式返回 False,则执行并返回 False_statements 的值

Python 复制代码
条件成立执行语句1 if 条件 else 条件不成立执行语句2

看如下代码:

Python 复制代码
a = 5
b = 3
st = "a大于b" if a &gt; b else  "a不大于b"
# 输出"a大于b"
print(st)

如果只是需要在控制台看到结果,那我们可以这样写:

Python 复制代码
a,b=3,5
print(f"{a}&gt;{b}") if a&gt;b else print(f"{a}&lt;{b}")
# 3&lt;5

又或者是使用一个print语句

Python 复制代码
a,b=5,3
print(f"{a}&gt;{b}" if a&gt;b else f"{a}&lt;{b}")

实例:使用三目运算符实现判断两个数字大小(实现if else 语句的效果)

Python 复制代码
x=int(input('请输入第一个数字'))
y=int(input('请输入第二个数字'))
if x&gt;y:
    print(f'{x}大于{y}')
else:
    print(f'{x}小于{y}')
Python 复制代码
# 条件成立那里放前面,else语句下面就放后面
x=int(input('请输入第一个数字'))
y=int(input('请输入第二个数字'))
print(f'{x}大于{y}' if x&gt;y else f'{x}小于{y}') 

我们同样可以使用如if嵌套的方法进行三目运算符嵌套,这样可以构成更加复杂的表达式。在嵌套时需要注意 if 和 else 的配对,例如:

Python 复制代码
a if a&gt;b else c if c&gt;d else d
# 理解为
a if a&gt;b else ( c if c&gt;d else d ) 
# 可以使用小括号

这是使用if else 在三个数字中输出最小的数

Python 复制代码
a, b, c = -1, -5, 1
if a &lt; b and a &lt; c:
    print(a)
elif b &lt; c and b &lt; a:
    print(b)
else:
    print(c)

如何用三目运算符进行实现?课后作业!

Python 复制代码
a, b, c = -1, 2, 1
print(a if a &lt; b and a &lt; c else  b if b &lt; c and b &lt; a else c)