尝试输入是否为 int 或特定字符串

try if input is an int or a specific string

我有一个程序可以检查用户输入是否为整数。但我也想让用户写一个特定的字符串来退出程序,例如'exit'.

这个问题有什么好的解决办法。我希望 try 块接受 int 或字符串 'exit'.

try:
    inp = int(input('Int: '))

except ValueError:
    print('Not an int.')

int 无法处理字母。一种解决方案是在输入后将其转换为整数。

例如在这个程序中,它首先检查inp是否是'exit'。如果不是,将其转换为整数。

try:
    inp = input('Int: ')
    if inp.lower()=='exit':
        print("Exit is entered")
    else:
        inp=int(inp)
except ValueError:
    print('Not an int.')

或者根据@Deceze的建议,可以把try...except缩小到int

左右
inp = input('Int: ')
if inp.lower()=='exit':
    print("Exit is entered")
else:
    try:
        inp=int(inp)
    except ValueError:
        print('Not an int.')