这是我到目前为止:userNum = int(input('How many perfect numbers do you wish to sum? (1-4)'))while userNum != 1 and userNum != 2 and userNum != 3 and userNum != 4: userNum = input('You did not enter a number 1-4! Try again!')if userNum == 1: print('Sum is 6 = 6')elif userNum == 2: print('Sum is 6 + 28 = 34')elif userNum == 3: print('Sum is 6 + 28 + 496 = 530')elif userNum == 4: print('Sum is 6 + 28 + 496 + 8128 = 8658')如果我输入的数字不是 1、2、3 或 4,它会重新提示,但如果我输入指定的整数之一,它不会退出 while 循环。有什么建议吗?
1 回答

慕盖茨4494581
TA贡献1850条经验 获得超11个赞
input 正在返回一个字符串,您正在将它与一个 int 进行比较。
userInput = 0
while userInput not in [1, 2, 3, 4]:
userInput = int(input('Enter a number'))
添加回答
举报
0/150
提交
取消