在Python编程中,有时需要根据用户的输入来决定是否终止程序。例如,在一个简单的文本冒险游戏中,玩家需要选择不同的选项来推进故事。本文将展示如何在用户输入特定字符(如'q')时,安全地退出循环并终止程序。
以下是一个示例代码,该代码模拟了一个黑暗房间中的场景,玩家可以选择查看四周、寻找灯或返回床上:
import time
import sys
while True:
try:
print("你的房间很暗,但有一盏红灯闪烁。你会怎么做?")
print()
print("1. 环顾四周。")
print("2. 找到一盏灯...")
print("3. 回到床上。")
print()
ans = input(">>> ")
if ans == '1':
print()
print("太暗了,看不清...最好找点光...")
time.sleep(2)
elif ans == '2':
print()
print("摸索着,你打开了床头柜上的灯...")
break
elif ans == '3':
print()
print("你睡去烦恼...但你无法安睡...")
time.sleep(1)
print()
print("回到现实世界...")
elif ans.lower() == 'q':
print("程序已终止。")
sys.exit(0)
else:
print("无效的选择,请重新输入。")
except ValueError:
print("无效的输入,请确保你输入的是数字或'q'。")
上述代码中,我们首先导入了time
和sys
模块,用于处理时间延迟和系统操作。程序通过一个无限循环等待用户的输入,并根据输入的不同做出相应的响应。如果用户输入'q',则通过调用sys.exit(0)
方法优雅地退出程序。
注意,为了提高用户体验,我们还添加了对无效输入的处理,确保即使用户输入非预期的内容,程序也能给出适当的反馈而不是直接崩溃。