弗兰的悲惨之旅
99.73M · 2026-04-04
在 Python 中,流程控制依靠**缩进(Indentation)**来划分代码块。通常是 4 个空格。
根据条件的真假(True/False)来决定执行哪一段代码。
age = 18
if age >= 18:
print("你已经成年了")
elif age >= 12:
print("你是青少年")
else:
print("你是儿童")
if: 必须有,判断第一个条件。elif: 可选,可以有多个,表示“否则如果”。else: 可选,表示以上条件都不满足时执行。用于组合多个条件:
and: 且(两者都为真)。or: 或(只要有一个为真)。not: 非(取反)。score = 85
if score >= 80 and score <= 90:
print("优秀")
for 循环:遍历序列for 循环用于遍历任何序列(列表、元组、字典、字符串等)。
# 遍历列表
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
print(f"我想吃: {fruit}")
# 使用 range() 生成数字序列
# range(start, stop, step)
for i in range(1, 5): # 输出 1, 2, 3, 4 (不含 5)
print(i)
while 循环:条件循环只要条件为真,就一直执行。
count = 0
while count < 3:
print(f"计数中: {count}")
count += 1 # 记得修改条件,否则会死循环
有时我们需要提前结束循环或跳过某次迭代。
| 关键字 | 作用 |
|---|---|
break | 彻底终止当前循环,跳出循环体。 |
continue | 跳过本次循环剩下的代码,直接进入下一次迭代。 |
pass | 占位符。什么都不做,只为了保持语法完整(常用于还没写好逻辑的函数)。 |
示例代码:
for i in range(1, 6):
if i == 3:
continue # 跳过 3
if i == 5:
break # 看到 5 就停止整个循环
print(i)
# 输出结果: 1, 2, 4
这是 Python 的“黑魔法”,能用一行代码完成循环+创建集合的操作。
需求:得到 1-10 中所有偶数的平方。
# 普通写法
squares = []
for x in range(1, 11):
if x % 2 == 0:
squares.append(x**2)
# 推导式写法 (更 Pythonic)
squares = [x**2 for x in range(1, 11) if x % 2 == 0]
# 将两个列表合并成一个字典
keys = ['name', 'age']
values = ['Jojo', 25]
user_dict = {keys[i]: values[i] for i in range(len(keys))}
# 结果: {'name': 'Jojo', 'age': 25}
if、for、while 语句行末一定要加 :。while 时,确保循环条件最终会变为 False。for 循环中直接 remove 正在遍历的列表元素会导致奇怪的错误,建议先复制一份列表或使用推导式。for。while。下一篇建议: “函数的艺术” —— 学习如何把这些逻辑封装成可复用的工具。