趋近智
if 语句for 循环with 自动关闭文件from ... importself 参数说明finally 块:清理操作实践在 Python 中实现条件逻辑和循环。这些练习将帮助您巩固对 if、elif、else、while、for、break 和 continue 的掌握。完成这些问题有助于编写更具动态性和实用性 Python 程序。
请记住,目标不仅仅是得到正确答案,更要了解代码 为什么 这样运行。请大胆尝试,修改示例,并尝试不同的方法。
编写一个 Python 脚本,询问用户年龄,然后打印一条消息,指明他们是“未成年人”(18岁以下)、“成年人”(18到64岁)还是“老年人”(65岁及以上)。
指导:
input() 函数从用户获取年龄。请记住 input() 返回一个字符串。int() 将输入字符串转换为整数。您可能希望稍后(在第9章中学习)将其包装在 try-except 块中,以优雅地处理非数字输入,但目前请假定输入有效。if-elif-else 结构检查年龄是否符合定义的范围。# 获取输入(记住转换为整数)
# age_str = input("请输入您的年龄: ")
# age = int(age_str)
# 使用 if/elif/else 检查年龄范围
# if age < 18:
# print(...)
# elif age >= 18 and age <= 64: # 或者简单地:elif age <= 64: 因为第一个 'if' 已经失败
# print(...)
# else: # 必须是 65 岁或以上
# print(...)
while 循环倒计时创建一个脚本,使用 while 循环从 5 倒数到 1,并打印每个数字。循环结束后,打印“发射!”。
指导:
count = 5)。while 循环,只要计数大于 0 就继续。count = count - 1 或 count -= 1)。count > 0 变为假时),打印最终消息。# 初始化计数器
# counter = 5
# 当计数器为正时循环
# while counter > 0:
# 打印计数器
# print(counter)
# 递减计数器
# counter -= 1
# 循环结束后打印最终消息
# print("Blast off!")
for 循环求和给定列表 numbers = [12, 7, 9, 21, 15],编写一个脚本,使用 for 循环计算并打印列表中所有数字的总和。
指导:
total_sum = 0)。for 循环遍历 numbers 列表中的每个 number。number 添加到 total_sum。total_sum。# 给定列表
# numbers = [12, 7, 9, 21, 15]
# 初始化求和累加器
# current_sum = 0
# 遍历列表
# for num in numbers:
# 将当前数字添加到总和
# current_sum += num # current_sum = current_sum + num 的简写
# 打印最终总和
# print("The sum is:", current_sum)
编写一个程序来模拟一个简单的数字猜谜游戏。
secret_number = 8)。for 循环为用户提供有限次的猜测机会(例如,3 次尝试)。range() 函数在此处可能有用。input() 提示用户进行猜测,并将其转换为整数。break 立即退出循环。指导:
range(3) 精确地循环三次。guessed_correctly = False 并在猜对时更改为 True,可以帮助确定最终消息。# secret_number = 8
# guessed_correctly = False
# max_attempts = 3
# print("猜一个 1 到 10 之间的数字。您有 3 次尝试机会。")
# for attempt in range(max_attempts):
# guess_str = input(f"第 {attempt + 1} 次尝试:输入您的猜测: ")
# guess = int(guess_str)
# if guess == secret_number:
# print("正确!你猜对了!")
# guessed_correctly = True
# break # 退出循环
# else:
# print("抱歉,不是这个。")
# 循环结束后,检查用户是否成功
# if not guessed_correctly:
# print(f"抱歉,您的尝试次数已用完。数字是 {secret_number}。")
(练习 4 的可选增强): 修改猜数字游戏以使用 continue。如果用户输入的猜测超出了有效范围(例如,小于 1 或大于 10),打印错误消息并使用 continue 跳过当前循环迭代的其余部分,直接进入下一次尝试,而不惩罚他们的无效输入(或者根据您的游戏规则,可能仍将其计为一次尝试)。
使用嵌套的 for 循环打印以下图案:
*
**
***
****
*****
指导:
i 行的星号数量是 i。print() 函数的 end 参数(print("*", end=""))在同一行上打印星号。print() 语句将光标移动到下一行,然后外层循环开始其下一次迭代。# number_of_rows = 5
# 外层循环用于控制行
# for i in range(1, number_of_rows + 1): # range(1, 6) 产生 1, 2, 3, 4, 5
# 内层循环用于控制列(当前行中的星号)
# for j in range(i): # range(i) 产生从 0 到 i-1 的数字,因此它运行 'i' 次
# print("*", end="")
# 打印完当前行的所有星号后,移动到下一行
# print()
这些练习涵盖了条件逻辑和循环的核心内容。尝试不同的变体,组合各类内容(例如,在循环内部使用 if 语句,就像在猜数字游戏中那样),并增强对 Python 程序执行流程的控制能力。
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造