- Python
Python 流程控制与基础应用
- 2025-6-10 21:07:49 @
Python 流程控制与基础应用教程
一、前言
本教程围绕 Python 中的 continue
、pass
语句,结合循环结构(for
、while
),通过实际案例(阶乘、奖牌统计、水仙花数等),帮助你掌握流程控制逻辑与简单算法实现,快速上手 Python 编程。
二、核心语句与循环基础
(一)continue 语句——跳过本次循环
continue
用于跳过当前循环的剩余代码,直接进入下一轮循环。
1. 基础示例(遍历数字跳过特定值)
for i in range(1, 6):
if i == 3:
continue # 当 i 为 3 时,跳过后续 print,进入下一轮循环
print(i, "hello")
运行结果:
1 hello
2 hello
4 hello
5 hello
2. 复杂场景(while
循环 + continue
)
var = 10
while var > 0:
print('当前值:', var)
var = var - 1
if var == 5:
continue # var 为 5 时,跳过下方 print("Done!")
print("Done!")
逻辑分析:当 var
减到 5 时,continue
会跳过 print("Done!")
,直接进入下一次 while
判断。
3. 字符串遍历应用(跳过特定字符)
for letter in 'Python':
if letter == 'h':
continue # 跳过字母 'h',不执行后续 print
print('当前字母:', letter)
运行结果:
当前字母: P
当前字母: y
当前字母: t
当前字母: o
当前字母: n
(二)pass 语句——占位符的艺术
pass
是空语句,不执行任何操作,主要用于保持程序结构完整(如未实现逻辑的函数、循环体)。
1. 语法结构示例(占位待完善逻辑)
def todo_function():
pass # 暂未实现功能,用 pass 占位,避免语法错误
while True:
pass # 无限循环占位,可后续补充逻辑
三、实战案例:循环与算法应用
(一)案例 1:求阶乘(for
循环实践)
题目:输入正整数 n
,计算 n!
(n! = 1×2×…×n
)。
代码实现:
n = int(input())
s = 1
for i in range(1, n + 1):
s *= i # 等价于 s = s * i,累乘计算阶乘
print(s)
输入输出示例:
输入 4
,输出 24
(4! = 1×2×3×4 = 24
)。
(二)案例 2:统计奖牌(while
循环 + 多变量累加)
题目:输入天数 n
,再输入 n
行金、银、铜牌数,统计总数与总奖牌数。
代码实现:
n = int(input())
gold = silver = bronze = total = 0
for _ in range(n):
a, b, c = map(int, input().split()) # 拆分并转换为整数
gold += a
silver += b
bronze += c
total = gold + silver + bronze # 累加总奖牌数
print(gold, silver, bronze, total)
输入输出示例:
输入:
3
1 0 3
3 1 0
0 3 0
输出:4 4 3 11
(金 4、银 4、铜 3,总 11)。
(三)案例 3:水仙花数(数位拆分与判断)
题目:找出所有三位数的水仙花数(等于其各位数字立方和的数,如 153 = 1³ + 5³ + 3³
)。
代码实现:
for num in range(100, 1000):
ge = num % 10 # 取个位
shi = num // 10 % 10 # 取十位
bai = num // 100 # 取百位
if ge**3 + shi**3 + bai**3 == num:
print(num, end=" ")
运行结果:
153 370 371 407
四、拓展练习(巩固知识)
- 输出偶数:遍历 1 - 100,用
continue
跳过奇数,输出所有偶数。 - 分离整数数位:输入整数,拆分出个位、十位、百位等(如输入 123,输出 3、2、1)。
- 插入元素:定义列表,通过循环与条件判断,按规则插入新元素(如在偶数后插入
-1
)。
五、总结
continue
跳过本次循环剩余逻辑,快速控制循环流程;pass
作为占位符,保持代码结构完整;- 结合
for
/while
循环,可实现阶乘计算、数据统计、水仙花数查找等算法;
掌握这些基础,就能灵活处理 Python 流程控制场景,为复杂编程打下坚实基础。多练习案例,强化逻辑思维,你会逐渐爱上用 Python 解决问题!
2 条评论
-
admin SU @ 2025-6-10 21:09:14
Python 流程控制之 break 与 continue 教程
一、引言
在 Python 编程中,循环结构(
for
循环和while
循环 )让我们可以重复执行一段代码,但有时我们需要灵活控制循环的执行流程,break
和continue
语句就像循环的“调节器”,能帮我们实现更精细的逻辑控制。接下来,我们结合实例详细学习它们的用法。二、continue 语句——跳过本次循环,开启下一轮
(一)基本概念
continue
语句的作用是跳过当前循环中continue
之后的代码,直接进入下一轮循环的条件判断(对于for
循环,就是进入下一个元素的迭代;对于while
循环,就是重新判断循环条件是否成立 )。可以把它想象成在循环里“中途刹车”,跳过当前这一轮的剩余步骤,赶紧进入下一轮。(二)代码示例与解析
1. for 循环中使用 continue
for i in range(1, 6): if i == 3: continue # 当i等于3时,执行continue print(i, "hello")
执行过程:
- 当
i = 1
时,不满足if
条件,执行print
,输出1 hello
。 - 当
i = 2
时,同样不满足if
条件,输出2 hello
。 - 当
i = 3
时,满足if
条件,执行continue
,跳过本次循环中print
语句,直接进入下一轮循环(i = 4
的迭代 )。 - 当
i = 4
时,输出4 hello
;i = 5
时,输出5 hello
。 最终输出:
1 hello 2 hello 4 hello 5 hello
2. while 循环中使用 continue
var = 10 while var > 0: print('当前值:', var) var = var - 1 if var == 5: continue # var减到5时,执行continue print("Done!")
执行过程:
- 初始
var = 10
,打印当前值: 10
,var
变为 9,不满足if
条件,打印Done!
。 - 后续
var
依次变为 8、7、6 时,流程类似,都会打印当前值:
对应的数和Done!
。 - 当
var
减到 5 时,执行continue
,跳过本次循环的print("Done!")
,直接进入下一轮循环判断(此时var = 5
,仍满足var > 0
,继续循环 )。 - 接着
var
变为 4、3 等,又会正常执行print("Done!")
,直到var
变为 0,循环结束 。
3. 遍历字符串时使用 continue
for letter in 'Python': if letter == 'h': continue # 遇到字母'h'时,跳过后续print print('当前字母:', letter)
执行过程:
- 遍历字符串
Python
中的字符,当遇到'h'
时,执行continue
,跳过print
语句,继续下一个字符的遍历。 - 其他字符都会执行
print
,所以输出除'h'
之外的字符对应的当前字母:
内容 。 最终输出:
当前字母: P 当前字母: y 当前字母: t 当前字母: o 当前字母: n
三、break 语句——直接终止循环,跳出循环体
(一)基本概念
break
语句的功能是立即终止当前所在的循环(无论是for
循环还是while
循环 ),程序流程跳转到循环之后的代码继续执行。就像给循环“踩了急刹车”,直接结束循环过程。(二)代码示例与解析
1. for 循环中使用 break
for i in range(1, 6): if i == 3: break # 当i等于3时,终止循环 print(i, "hello")
执行过程:
i = 1
时,输出1 hello
;i = 2
时,输出2 hello
。- 当
i = 3
时,满足if
条件,执行break
,直接终止整个for
循环,后续i = 4
、i = 5
的迭代不会进行 。 最终输出:
1 hello 2 hello
2. while 循环中使用 break
var = 10 while var > 0: print('当前值:', var) if var == 7: break # var等于7时,终止循环 var = var - 1
执行过程:
- 初始
var = 10
,打印当前值: 10
,var
变为 9 。 - 接着
var = 9
时,打印当前值: 9
,var
变为 8 ;var = 8
时,打印当前值: 8
,var
变为 7 。 - 当
var = 7
时,满足if
条件,执行break
,终止while
循环,var
不会再继续递减 。 最终输出:
当前值: 10 当前值: 9 当前值: 8 当前值: 7
3. 结合输入判断使用 break(实现简单退出逻辑 )
while True: # 无限循环,除非遇到break user_input = input("请输入内容(输入q退出):") if user_input == 'q': break # 输入'q'时,终止循环 print("你输入的是:", user_input)
执行过程:
- 程序进入
while True
无限循环,每次等待用户输入。 - 如果用户输入
'q'
,执行break
,循环终止;否则,打印用户输入的内容,继续下一轮循环等待输入 。
四、break 与 continue 对比总结
语句 作用范围 对当前循环的影响 后续程序流程 continue 仅跳过本次循环剩余代码 下一轮循环会继续执行(只要循环条件满足 ) 进入下一轮循环的条件判断或迭代 break 直接终止当前整个循环 循环立即结束,不再进行后续迭代或判断 跳转到循环之后的代码继续执行 五、综合练习(巩固 break 与 continue 用法 )
(一)练习 1:遍历数字,特定条件控制循环
编写程序,使用
for
循环遍历 1 到 10 的数字,当数字是 4 时,用continue
跳过;当数字是 7 时,用break
终止循环,打印每次循环的数字(除被跳过的情况 )。示例代码:
for num in range(1, 11): if num == 4: continue if num == 7: break print(num)
输出结果:
1 2 3 5 6
(二)练习 2:结合 while 循环与用户输入
实现一个程序,使用
while
循环不断让用户输入整数,计算输入数字的累加和。当输入0
时,用continue
跳过(不累加 0 );当输入-1
时,用break
终止循环,最后输出累加的结果。示例代码:
sum_num = 0 while True: num = int(input("请输入整数(输入-1退出,输入0跳过累加):")) if num == -1: break if num == 0: continue sum_num += num print("累加和为:", sum_num)
六、总结
通过对
break
和continue
语句的学习,我们能更灵活地控制循环的执行流程:continue
帮我们跳过循环中不需要执行的部分,高效进行下一轮迭代;break
让我们可以在满足特定条件时,及时终止循环,避免不必要的重复执行。
在实际编程中,合理运用这两个语句,能让循环逻辑更贴合需求,写出更简洁、高效的代码。多结合练习案例,加深理解和运用,就能熟练掌握它们啦!
- 当
-
2025-6-10 21:08:38@
🐍 Python 循环与控制结构
🧠 本节课目标:
通过本节课,你将掌握以下内容:
break
:立即退出当前循环continue
:跳过本次循环,继续下一轮pass
:空语句,用于占位或保持结构完整- 使用
for
和while
实现常见编程任务 - 经典练习题解析:阶乘计算、奖牌统计、水仙花数查找
一、
break
语句 —— 立即退出循环✅ 示例代码:
for i in range(1, 6): if i == 3: break print(i, "hello")
🔍 输出结果:
1 hello 2 hello
⚠️ 当
i == 3
时,break
会立刻终止整个循环。
二、
continue
语句 —— 跳过本次循环✅ 示例代码:
for i in range(1, 6): if i == 3: continue print(i, "hello")
🔍 输出结果:
1 hello 2 hello 4 hello 5 hello
💡
continue
只是跳过了i == 3
的这一轮,后续的循环还会继续执行。
🧪 进阶练习:打印除 'h' 外的所有字母
for letter in 'Python': if letter == 'h': continue print('当前字母:', letter)
🔍 输出结果:
当前字母: P 当前字母: y 当前字母: t 当前字母: o 当前字母: n
三、
pass
语句 —— 空操作,占位符✅ 示例代码:
if True: pass # 后续再补全逻辑,暂时不写具体内容 print("程序继续运行...")
🔍 输出结果:
程序继续运行...
✅
pass
不做任何事情,常用于调试、占位、保持结构完整性。
四、经典案例分析
📌 案例1:求一个数的阶乘(n!)
题目说明:
输入一个正整数
n
,输出它的阶乘n! = 1 × 2 × … × n
范围:1 ≤ n ≤ 20✅ 示例代码:
n = int(input()) s = 1 for i in range(1, n+1): s *= i print(s)
🔍 示例运行:
输入:4 输出:24
📌 案例2:统计奖牌总数
题目说明:
输入
n
天的金、银、铜牌数,输出总金牌、银牌、铜牌及总奖牌数。✅ 示例代码:
n = int(input()) jing = 0 ying = 0 tong = 0 for _ in range(n): g, s, b = map(int, input().split()) jing += g ying += s tong += b total = jing + ying + tong print(jing, ying, tong, total)
🔍 示例运行:
输入: 3 1 0 3 3 1 0 0 3 0 输出: 4 4 3 11
📌 案例3:找出所有“水仙花数”
题目说明:
一个三位数,如果它等于其各位数字的立方和,则称为“水仙花数”。
例如:153 = 1³ + 5³ + 3³
✅ 示例代码:
for i in range(100, 1000): ge = i % 10 shi = (i // 10) % 10 bai = i // 100 if ge**3 + shi**3 + bai**3 == i: print(i, end=" ")
🔍 输出结果:
153 370 371 407
五、拓展练习题(可选)
✅ 练习1:数字转汉字
题目说明:
用户输入一个1~9之间的数字,输出对应的汉字。如输入2,输出“二”。
✅ 示例代码:
nums = ["一", "二", "三", "四", "五", "六", "七", "八", "九"] while True: n = int(input()) print(nums[n - 1])
🔍 示例运行:
输入:8 输出:八
✅ 练习2:按奇偶性分类列表元素
题目说明:
从列表中取出元素,分别放入奇数和偶数列表中。
✅ 示例代码:
a = [34, 17, 7, 48, 10, 5] b = [] # 偶数 c = [] # 奇数 while len(a) > 0: num = a.pop() if num % 2 == 0: b.append(num) else: c.append(num) print("偶数列表:", b) print("奇数列表:", c)
🔍 输出结果:
偶数列表: [10, 48, 34] 奇数列表: [5, 7, 17]
六、知识点总结表
控制语句 作用 示例代码 break
立即退出当前循环 for i in range(10): if i == 5: break
continue
跳过本次循环,继续下一轮 for i in range(10): if i == 5: continue
pass
占位语句,不做任何操作 if True: pass
for
固定次数循环 for i in range(1, 10)
while
条件满足时循环 while x < 10: x += 1
七、课后作业建议(动手练一练)
- 编写程序:判断一个年份是否为闰年。
- 条件:能被4整除但不能被100整除,或者能被400整除。
- 编写程序:输入一个分数,输出对应的等级(A:90-100, B:80-89, C:60-79, D:<60)
- 编写程序:模拟登录验证。
- 用户名正确且密码正确才允许登录。
- 编写程序:找出1000以内的完数(一个数等于其所有因数之和)
🎯 总结一句话:
掌握好循环控制语句
break
,continue
,pass
,结合for
和while
,就能写出功能强大、逻辑清晰的 Python 程序!
- 1