python - Python - 使用 input() 在控制台中重复输入选项,直到用户选择退出
问题描述
我在 Python-3.xx 中使用 input() 为用户提供了多个选项,我希望这些选项一次又一次地显示,直到用户通过选择 quit 选项选择退出
例如 :
a = 5
b = 2
inp = input('''Please choose from Options mentioned below:
1. Sum
2. Multiply
3. Divide
0. Quit
''')
if int(inp) == 1:
sum(a,b)
elif int(inp) == 2:
multiply(a,b)
elif int(inp) == 3:
divide(a,b)
elif int(inp) == 0:
print("Thanks for your input.\nQuitting the process")
elif int(inp) > 3:
print("Please type numbers from 0 to 8")
else:
print("Only numbers are accepted. Please select right option")
因此,根据上面的示例,必须向用户显示相同的选项,直到他键入“0”,这将从控制台退出 input() 进程。如果用户键入的数字 > 3 或用户键入任何非数字字符,则应打印相关消息,并且必须再次提供选项
现在万一出现这些故障,只有消息被打印在屏幕上,并且它正在结束 input() 过程。
知道我在这里想念什么吗?
解决方案
你可以这样做:
while True:
inp = input('''Please choose from Options mentioned below:
1. Sum
2. Multiply
3. Divide
0. Quit
''')
if int(inp) == 1:
sum(a,b)
elif int(inp) == 2:
multiply(a,b)
elif int(inp) == 3:
divide(a,b)
elif int(inp) == 0:
print("Thanks for your input.\nQuitting the process")
break
elif int(inp) > 3:
print("Please type numbers from 0 to 8")
else:
print("Only numbers are accepted. Please select right option")
虽然这回答了你的问题,但我必须说迭代和分支是编程中的核心概念,所以我建议你不要从头开始提问,而是学习一些课程或系列教程。
推荐阅读
- r - Combining geom_bar with geom_line in one plot
- reactjs - React Apollo 客户端不发送 cookie
- git - 从 JGit 执行 git 命令
- azure-devops - 从 AzureDevOps YAML 管道中的所有工件(工件名称)下载所有文件
- google-assistant-sdk - 使用 Google Actions Builder 请求地址
- node.js - Anystock 不适用于 Anychart-NodeJS
- unity3d - 无法下载合作项目
- firebase - Firestore and flutter: update documents when a field is null
- flutter - 上下文宽度更改中的 Getx 更新
- c - 断言在用户空间成功但在内核中失败