python-3.x - python3,多个输入的值异常,正确的顺序?
问题描述
我是 pycharm 的初学者。
找不到答案如何检查多个 Integer 输入,并带有Value Error Exception。我的代码现在是:
while True:
try:
num1 = int(input("Give first Integer: "))
num2 = int(input("Give second Integer: "))
break
except ValueError:
print("You need Integer!")
但问题很少。运行代码和输出是:
Give first Integer: 1
Give second Integer: w
You need Integer!
Give first Integer:
不知道如何重建代码,循环从 num2 开始,当 Value 为 false 时。并且光标在输入位置上还没有准备好,对于 num1,他在 Line 中的位置 1 上闪烁。Num1 异常有效。
有问题:
- 如果num2不是整数,我需要再次插入num1。当num2为假时,如何仅插入num2 ?
- 光标跳转到第二行中的 pos1,要求输入“Give first Integer:”。如何让光标在“:”之后的正确位置?
问候。
解决方案
嗯,可能有更多的pythonic方式,但这样做:
while True:
try:
num1 = int(input("Give first Integer: "))
break
except ValueError:
print("You need Integer!")
while True:
try:
num2 = int(input("Give second Integer: "))
break
except ValueError:
print("You need Integer!")
样本输出:
Give first Integer: R
You need Integer!
Give first Integer: 4
Give second Integer: NO
You need Integer!
Give second Integer: Nope
You need Integer!
Give second Integer: -12
方法 2 带有一个 while 循环:
valid = []
while True:
try:
num = int(input("Give an Integer: "))
valid.append(num)
if len(valid) == 2:
break
except ValueError:
print("You need Integer!")
num1, num2 = valid
print("The entered integers are: ", num1, num2)
样本输出:
Give an Integer: NOOO
You need Integer!
Give an Integer: 45
Give an Integer: again?
You need Integer!
Give an Integer: okay
You need Integer!
Give an Integer: 4
The entered integers are: 45 4
推荐阅读
- python - 为什么 SciKit 的分水岭功能太慢?
- iccube - 要备份的 icCube-data 文件夹
- navbar - Intersection Observer - 突出显示当前部分
- java - Spring MVC项目中的多个请求关闭OutputStream
- solr - AKS custom log log analytics
- python - 比较两个 CSV 文件之间的日期时间对象时出现循环问题
- javascript - 将 LocalStorage 中的 JSON 文件解析为 react-native
- logstash - Difference between remove_field in drop filter plugin and remove_field in mutate filter plugin
- javascript - 自动完成从数据库输出两个字段
- dask - Dask 上的 Jupyter Hub 使用内部负载平衡器