python3,多个输入的值异常,顺序正确吗?

python3, Value Exception on multiple inputs, correct sequence?

我是 pycharm 的初学者。

找不到如何检查 多个整数输入 值错误异常 的答案。 我的代码现在是:

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:

不知道如何重建代码,当值为 false 时,循环从 num2 开始。并且 Cursor 在输入位置还没有准备好,对于 num1,他在 Line 的 Postion 1 上闪烁。 Num1 异常有效

问题中:

此致。

嗯,可能有更多的 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 

使用一个 while 循环的方法 2:

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