Tags: 数据类型 AI 人工智能

Python条件判断(if else语句)的讲解

Python条件判断(if语句)的基础讲解

Python中,我们经常需要根据某些条件来决定程序的执行路径,比如当某个数值大于另一个数值时执行某段代码,否则执行另一段。本文将介绍常见的if、elif、else用法,以及短写写法与逻辑运算符,让你更轻松地编写条件判断。

1. Python中的逻辑条件

在数学里常见的比较操作符同样适用于Python:

  • a == b:判断a是否等于b
  • a != b:判断a是否不等于b
  • a < b:判断a是否小于b
  • a <= b:判断a是否小于或等于b
  • a > b:判断a是否大于b
  • a >= b:判断a是否大于或等于b

这些条件通常与if语句或循环一起使用。

2. if语句的基本用法

最简单的if语句形式:

a = 33
b = 200

if b > a:
    print("b大于a")

上面代码里,Python会先检查b > a是否成立。如果成立就执行print语句,否则不执行。

2.1 注意缩进

Python通过缩进来判断代码块范围,缺少缩进会导致错误:

# 错误示例,缺少缩进会报错
a = 33
b = 200
if b > a:
print("b大于a")  # 会发生错误

3. if...elif...else 多分支判断

当需要判断多种情况时,可使用elif:

a = 33
b = 33

if b > a:
    print("b大于a")
elif a == b:
    print("a和b相等")
else:
    print("a大于b")

程序会按顺序检查各条件并执行第一个为真的分支;如果所有条件都不满足,则执行else

3.1 只使用else

如果只需判断true/false两种情况,可省略elif,如:

a = 200
b = 33

if b > a:
    print("b大于a")
else:
    print("b不大于a")

4. 短写(短路)语法

Python允许将简单的if或if...else写在一行:

# 单行 if
a = 10
b = 5
if a > b: print("a大于b")

# 单行 if...else(三元表达式)
print("A") if a > b else print("B")

还可写多条件:

a = 10
b = 10
print("A") if a > b else print("=") if a == b else print("B")

5. 逻辑运算符:and、or、not

Python使用以下逻辑运算符来组合多个条件:

  • and:所有条件都为真时返回真
  • or:只要有一个条件为真就返回真
  • not:取反结果

示例:

a = 200
b = 33
c = 500

# and用法
if a > b and c > a:
    print("两者条件都成立")

# or用法
if a > b or a > c:
    print("至少有一个条件成立")

# not用法
a = 33
b = 200
if not a > b:
    print("a不大于b")

6. 嵌套if(nested if)

可以在if语句内部再写另一个if判断:

x = 41

if x > 10:
    print("大于10")
    if x > 20:
        print("并且大于20")
    else:
        print("但不大于20")

使用嵌套结构要注意缩进层级,以保持代码清晰。

7. pass语句

如果你想写一个if块但暂时不决定做什么,必须用pass来占位,避免语法错误:

a = 33
b = 200

if b > a:
    pass  # 暂时什么都不做

总结

  • if:检查条件是否为真,为真则执行。
  • elif:在第一个条件为假时继续检查其他条件。
  • else:以上都不满足时执行。
  • and / or / not:逻辑运算符,可组合多个条件。
  • 缩进:Python用空白来表明代码块范围,必须对齐。
  • 短写语法:简化代码书写,但要确保可读性。
  • pass:在if块中临时占位,避免语法错误。

当你能熟练掌握Python条件和逻辑写法,就能更好地控制程序流转,编写出逻辑清晰、灵活的代码。