Python入门课程 03:程序控制流与结构化编程
程序三大结构:顺序、分支、循环
1. 逻辑的“引擎”:条件控制语句
计算机程序的核心在于根据不同的情况做出不同的反应。Python 通过 if、elif 和 else 关键字来实现这种分支逻辑。
1.1 基础条件判断 (if)
if 语句用于测试一个条件,如果条件为真(True),则执行对应的代码块。注意 Python 使用冒号 : 和缩进来界定代码块。
age = 20# 判断年龄是否大于等于 18if age >= 18: print(”您已成年,可以进入网吧。”)
1.2 双向选择 (if-else)
当条件不满足时,我们需要执行另一套逻辑,这时可以使用 if-else 组合。
score = 55if score >= 60: print(”恭喜,考试及格!”)else: print(”很遗憾,考试不及格,请继续努力。”)
1.3 多条件判断 (if-elif-else)
面对多个互斥的条件时,可以使用 elif(else if 的缩写)进行链式判断。程序会从上到下依次检查,一旦某个条件满足,后续的判断将被跳过。
grade = 85if grade >= 90: print(”等级:优秀”)elif grade >= 80: print(”等级:良好”)elif grade >= 60: print(”等级:及格”)else: print(”等级:不及格”)
1.4 嵌套条件判断
在复杂的业务逻辑中,我们可以在一个 if 语句内部再嵌套另一个 if 语句。
username = ”admin”password = ”123456”if username == ”admin”: if password == ”123456”: print(”登录成功,欢迎管理员!”) else: print(”密码错误!”)else: print(”用户名不存在!”)
2. 重复的力量:循环控制语句
当需要重复执行某段代码时(例如处理列表中的每一项、计算累加和等),循环是必不可少的工具。
2.1 迭代循环 (for)
for 循环通常用于遍历序列(如字符串、列表)或通过 range() 函数生成数字序列。
# 遍历字符串for char in ”Pyduck”: print(char, end=” ”)# 输出: P y d u c k print()# 使用 range 生成数字序列 (0 到 4)for i in range(5): print(i, end=” ”)# 输出: 0 1 2 3 4
2.2 条件循环 (while)
while 循环会在给定的条件为真时一直重复执行代码块。使用时必须确保条件最终会变为假,否则会导致“死循环”。
count = 0# 当 count 小于 5 时持续循环while count < 5: print(f”当前计数: {count}”) count += 1# 每次循环将 count 加 1
2.3 循环控制关键字 (break 与 continue)
- break:立即跳出整个循环,不再执行剩余的迭代。
- continue:跳过当前这一次循环的剩余代码,直接进入下一次迭代。
# break 示例:找到第一个偶数就停止for num in : if num % 2 == 0: print(f”找到偶数: {num}”) break[[source_group_web_1]]# continue 示例:只打印奇数,跳过偶数for num in range(5): if num % 2 == 0: continue# 如果是偶数,跳过本次打印 print(f”奇数: {num}”)
3. 逻辑运算与比较
在编写条件和循环时,我们经常需要组合多个判断条件,这就用到了逻辑运算符和比较运算符。
3.1 比较运算符
用于比较两个值,返回布尔值(True 或 False)。
(大于), < (小于), >= (大于等于), <= (小于等于)
3.2 逻辑运算符
x = 10y = 20# and 运算if x > 5 and y > 15: print(”x大于5 且 y大于15”)# or 运算if x > 100 or y > 15: print(”只要有一个条件满足即可”)# not 运算is_raining = Falseif not is_raining: print(”今天没下雨,可以出去玩”)
4. 占位符:pass 语句
在搭建程序框架时,有时我们需要先写出 if 或 for 的结构,但暂时不想写具体的逻辑代码。如果直接留空,Python 会报语法错误。这时可以使用 pass 语句,它什么也不做,仅作为语法占位符。
def future_function(): pass# 函数还没想好怎么写,先用 pass 占位,防止报错if True: pass# 条件分支暂时留空
5. 综合实战案例
将条件判断与循环结合起来,解决一个实际问题:计算 1 到 100 之间所有偶数的和。
total = 0for i in range(1, 101):# 生成 1 到 100 的数字 if i % 2 == 0:# 判断是否为偶数 total += i# 累加到总和 else: continue# 奇数则跳过(这里其实可以省略else)print(f”1到100之间所有偶数的和为: {total}”)
学习建议与避坑指南