目录
1. 条件控制的重要性
2. 理解条件语句的基础
3. 使用 elif 增加更多选择
4. 利用 in 和 not in 进行集合匹配
5. 利用 and 与 or 连接条件
6. 高级技巧:列表推导式中的条件表达式
7. 实战案例:自动评分系统
8. 总结
文末福利
1. 条件控制的重要性
条件控制是编程中最基本也是最重要的部分之一。它让程序可以根据不同的情况做出不同的反应。想象一下,如果我们的程序不能根据用户的输入或环境的变化做出响应,那它就只是一个死板的工具,无法适应多变的需求。
2. 理解条件语句的基础
Python 中最基本的条件控制结构是 if
语句。通过这个简单的语句,我们可以实现逻辑分支,让程序走向不同的路径。
代码示例:
age = int(input("请输入你的年龄: "))
if age >= 18:
print("你已成年!")
else:
print("你还未成年哦!")
这段代码首先提示用户输入年龄,然后根据输入的值判断用户是否成年。这里的关键点在于 if
后面的条件表达式 age >= 18
,它是一个布尔表达式,返回 True
或 False
。
3. 使用 elif
增加更多选择
当需要处理多个条件时,elif
(即“else if”)就派上用场了。它可以让你添加多个条件检查,使程序更加灵活。
代码示例:
score = int(input("请输入你的分数: "))
if score >= 90:
print("优秀")
elif score >= 70:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
这里,根据分数的不同范围,程序会输出不同的评价。elif
允许我们在一个 if
语句中添加多个条件分支。
4. 利用 in
和 not in
进行集合匹配
除了比较数值,我们还可以使用 in
和 not in
来检查某个元素是否存在于一个集合(如列表、元组、字符串等)中。
代码示例:
colors = ["red", "green", "blue"]
favorite_color = input("请输入你喜欢的颜色: ")
if favorite_color in colors:
print(f"我喜欢{favorite_color}!")
else:
print("这不是我最喜欢的三种颜色之一。")
这段代码询问用户喜欢的颜色,然后检查该颜色是否在预定义的颜色列表中。如果是,则打印一条友好的消息;否则,告诉用户这不在他们喜欢的颜色范围内。
5. 利用 and
与 or
连接条件
有时候我们需要同时满足多个条件,或者只需要满足其中一个条件即可。这时候就可以使用逻辑运算符 and
和 or
。
代码示例:
age = int(input("请输入你的年龄: "))
has_ticket = input("你有票吗?(yes/no): ") == "yes"
if age >= 18 and has_ticket:
print("欢迎进入电影院!")
elif age < 18 and has_ticket:
print("对不起,未成年人需由成人陪同。")
else:
print("请先购票。")
此示例展示了如何结合使用 and
和 or
来创建更复杂的逻辑判断。只有当用户既符合年龄要求又有票的情况下,才能进入电影院。
6. 高级技巧:列表推导式中的条件表达式
列表推导式是一种简洁的方式,可以用来创建新列表。当你想在生成列表的同时加入条件控制时,可以在列表推导式中使用条件表达式。
代码示例:
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = [num for num in numbers if num % 2 == 0]
print(even_numbers) # 输出: [2, 4, 6]
这段代码创建了一个只包含原列表中偶数的新列表。列表推导式的语法非常直观,容易理解。
7. 实战案例:自动评分系统
假设我们要开发一个在线课程的自动评分系统。对于每个学生的答案,系统需要根据多个标准给出评分。
需求分析:
-
如果学生按时提交作业,加分。
-
如果答案完全正确,满分;部分正确,按比例给分;完全错误,零分。
-
根据参与讨论的积极性给予额外加分。
代码实现:
def calculate_score(submission_time, correctness, discussion_participation):
base_score = 0
if submission_time <= 24 * 60 * 60: # 按时提交
base_score += 10
if correctness == "perfect":
base_score += 80
elif correctness == "partial":
base_score += 40
else:
base_score += 0
if discussion_participation >= 3:
base_score += 10
return base_score
# 测试数据
print(calculate_score(23 * 60 * 60, "perfect", 5)) # 应输出 100
print(calculate_score(25 * 60 * 60, "partial", 2)) # 应输出 40
在这个例子中,我们定义了一个函数 calculate_score()
来计算学生的总分。通过组合使用多个条件判断,实现了对不同情况下的评分规则。
8. 总结
通过本文的学习,你应该已经掌握了 Python 中条件控制的基本用法以及一些高级技巧。从简单的 if
语句到复杂的多条件组合,再到列表推导式中的条件表达式,每一步都为我们提供了更强大的编程能力。记住,条件控制是编写逻辑清晰、功能丰富的程序的基础。不断练习,你会越来越熟练地运用这些技巧解决实际问题!
好了,今天的分享就到这里了,我们下期见。如果本文对你有帮助,请动动你可爱的小手指点赞、收藏吧!
文末福利
最后,如果你对Python感兴趣的话,可以试试我整理的这一份全套的Python学习资料,【点击这里】免费领取!
包括:Python激活码+安装包、Python
web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。
也可以微信扫描下方CSDN官方认证二维码免费获取【保证100%免费】。
① Python所有方向的学习路线图,清楚各个方向要学什么东西
② 100多节Python课程视频,涵盖必备基础、爬虫和数据分析
③ 100多个Python实战案例,学习不再是只会理论
④ 华为出品独家Python漫画教程,手机也能学习