AITC Wiki

Python 控制流

Python Control Flow

Python 控制流

English version: Python Control Flow

控制流结构决定了语句执行的顺序,包括条件分支和循环。

定义

控制流指单个语句、指令或函数调用的执行或求值顺序。Python 提供 if 语句进行条件分支,以及 for / while 循环进行重复执行。

Info

Python 使用缩进(4 个空格或一个制表符)定义代码块。冒号 : 用于开始一个代码块。

If 语句

num = float(input("Enter a number: "))
if num > 0:
    print("Positive!")
elif num < 0:
    print("Negative!")
else:
    print("Zero!")

组合条件

比较运算符(==!=><>=<=)和逻辑运算符(andornot)可以组合使用:

num = 15
if 10 <= num <= 20:
    print("In range!")
else:
    print("Out of range!")
 
username = input("Username: ")
password = input("Password: ")
if username == "admin" and password == "1234":
    print("Login successful!")
else:
    print("Invalid credentials.")

For 循环

# 打印 1 到 5
for i in range(1, 6):
    print(i)
 
# 累加列表中的所有数字
numbers = [1, 2, 3, 4, 5]
total = 0
for num in numbers:
    total += num
print("Sum:", total)  # 15

While 循环

# 从 5 倒数到 1
count = 5
while count > 0:
    print(count)
    count -= 1

Continue 与 Break

  • continue:跳过当前迭代的剩余部分,进入下一次迭代。
  • break:立即退出循环。
# 使用 continue 跳过偶数
for i in range(10):
    if i % 2 == 0:
        continue
    print(i)  # 输出 1, 3, 5, 7, 9
 
# 使用 break 满足条件时立即退出循环
for num in range(1, 100):
    if num % 7 == 0:
        print("First multiple of 7:", num)  # 7
        break

嵌套循环

# 乘法表(1 到 3)
for i in range(1, 2):
    for j in range(1, 4):
        print(f"{i} x {j} = {i*j}")
    print("------")

常见误解

  • 忘记冒号:每个 ifelifelseforwhiledefclass 语句必须以冒号结尾。
  • 缩进不一致:混用制表符和空格会导致 IndentationError

相关概念

来源资料