是否可以仅使用 try-except 语句来避免整数、浮点数和特殊字符?

Is it possible to avoid integers,floats and special characters using try-except statement only?

我正在尝试制作一个只允许输入字母的代码。我知道我们可以使用 isalpha() 方法来做到这一点。但是,我正在寻找任何其他不同的解决方案,比如 try-except?

那就是重新发明轮子,用str.isalpha


您可以使用 assertAssertionError

from string import ascii_letters

value = None
while True:
    try:
        value = input("Give a value: ")
        assert all(c in ascii_letters for c in value)
        break
    except AssertionError:
        print("Invalid input, try again")

print("Valid input:", value)
Give a value: aa!
Invalid input, try again
Give a value: !!!
Invalid input, try again
Give a value: !
Invalid input, try again
Give a value: rrTT
Valid input: rrTT