当前位置:首页>python>Python 流程控制完全详解# if 判断 • 缩进规则 • while 循环 • for 循环 • range() • 三元运算符

Python 流程控制完全详解# if 判断 • 缩进规则 • while 循环 • for 循环 • range() • 三元运算符

  • 2026-09-18 13:40:35
Python 流程控制完全详解# if 判断 • 缩进规则 • while 循环 • for 循环 • range() • 三元运算符

一、if 判断语句与缩进规则

1. 什么是 if 判断?

根据条件的 True / False 决定执行哪一段代码,是程序最基础的“分支选择”。

2. 基本语法结构

if 条件1:
    条件1成立时执行的代码
elif 条件2:
    条件2成立时执行的代码
else:
    所有条件都不成立时执行的代码

要点:

  • • if 是必须的
  • • elif 可以有 0~多个
  • • else 最多 1 个,可以没有

3. 缩进规则(Python 灵魂)

  1. 1. 凡是以 冒号 : 结尾的行,下一行必须缩进
  2. 2. 同一个代码块内,缩进必须完全一致
  3. 3. 官方推荐:4 个空格(不要用 Tab,更不要 Tab+空格混用)
  4. 4. 缩进错误直接报错:IndentationError

正确示例

age = 20
if age >= 18:
print("已成年")
print("可以进入")
else:
print("未成年")

错误示例(缩进不一致)

if age >= 18:
print("已成年")
print("可以进入")

4. 单层 if

score = 95
if score >= 90:
print("成绩优秀")

5. if + else

num = 7
if num % 2 == 0:
print("偶数")
else:
print("奇数")

6. if + elif + else(多分支)

score = 76

if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")

7. 嵌套 if(if 里面再写 if)

age = 20
money = 200

if age >= 18:
if money >= 100:
print("可以购票入场")
else:
print("钱不够")
else:
print("未成年禁止入内")

二、while 循环

1. 作用

当条件为 True 时,重复执行一段代码,直到条件变为 False。

2. 基本语法

while 条件:
    循环体代码

3. 最简单示例

i = 1
while i <= 3:
print(i)
    i += 1# 必须改变变量,否则死循环

输出:

1
2
3

4. 死循环(慎用)

whileTrue:
print("一直循环")

5. break:立即终止整个循环

i = 1
while i < 10:
if i == 4:
break
print(i)
    i += 1

输出:

1
2
3

6. continue:跳过本次循环,直接进入下一次

i = 0
while i < 5:
    i += 1
if i == 3:
continue
print(i)

输出:

1
2
4
5

7. while + else(很少用)

循环正常结束(不是 break 跳出)时执行 else

i = 1
while i <= 3:
print(i)
    i += 1
else:
print("循环正常结束")

三、for 循环与 range() 函数

1. for 循环作用

用来遍历可迭代对象:数字序列、字符串、列表、元组等。

2. 基本语法

for 变量 in 可迭代对象:
    循环体

3. range() 函数详解(超级重要)

range 用来生成整数序列,不直接生成列表,节省内存。

格式1:range(stop)

从 0 开始,到 stop-1 结束

for i inrange(4):
print(i)

输出:0 1 2 3

格式2:range(start, stop)

从 start 开始,到 stop-1 结束

for i inrange(2, 6):
print(i)

输出:2 3 4 5

格式3:range(start, stop, step)

step 为步长(可正可负)

for i inrange(1, 10, 2):
print(i)

输出:1 3 5 7 9

倒序:

for i inrange(5, 0, -1):
print(i)

输出:5 4 3 2 1

4. for 循环遍历字符串

s = "python"
for c in s:
print(c)

5. for + break

for i inrange(10):
if i == 3:
break
print(i)

6. for + continue

for i inrange(5):
if i == 2:
continue
print(i)

7. for + else

循环正常结束执行 else,被 break 打断则不执行

for i inrange(3):
print(i)
else:
print("循环正常结束")

四、条件表达式(三元运算符)

1. 作用

把简单的 if...else... 写成一行代码,简洁优雅。

2. 语法

变量 = 条件成立时的值 if 条件 else 条件不成立时的值

3. 示例1:判断成年

age = 19
result = "成年"if age >= 18else"未成年"
print(result)

4. 示例2:判断奇偶

num = 7
res = "偶数"if num % 2 == 0else"奇数"

5. 示例3:求最大值

a = 10
b = 20
max_num = a if a > b else b

6. 等价普通写法

if age >= 18:
    result = "成年"
else:
    result = "未成年"

📚 典型综合例题(带详细解析)

例题1:求 1~100 累加和(while)

i = 1
total = 0
while i <= 100:
    total += i
    i += 1
print(total)  # 5050

例题2:求 1~100 偶数和(for + range)

total = 0
for i inrange(2, 101, 2):
    total += i
print(total)

例题3:判断成绩等级

score = 88
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 60:
print("C")
else:
print("D")

输出:B

例题4:三元运算一行判断

num = 11
print("能被5整除"if num % 5 == 0else"不能被5整除")

📌 重点易错点总结(新手必看)

  1. 1. 冒号 : 千万不能丢,丢了必报错
  2. 2. 缩进必须一致,混用 Tab 和空格 99% 会报错
  3. 3. range(a,b) 不包含 b,是 左闭右开
  4. 4. while 循环一定要写更新条件,否则死循环
  5. 5. break 跳出整个循环,continue 只跳过当前一次
  6. 6. 三元运算符只能处理简单二分支,不能写复杂逻辑

📝 本章整体总结

  • • if 分支:实现条件选择,多分支用 elif,缩进是语法核心
  • • while 循环:按条件重复执行,适合未知次数循环
  • • for 循环:遍历序列,搭配 range() 使用最广
  • • range():生成数字序列,三种写法必须熟练掌握
  • • 三元运算符:简化 if-else,让代码更简洁

最新文章

随机文章