Python - 如何正确实现 TypeError
Python - how to correctly implement TypeError
try:
Name = input("enter name")
except TypeError:
print("Please enter letters")
即使我输入数字,也不会打印消息。
不会出现类型错误,因为您输入了一个字符串并将其保存为一个字符串。
TypeError 是 Python 编程语言中的异常,当操作中对象的数据类型不合适时会发生这种异常。例如,如果您尝试用字符串除以整数,则整数和字符串对象的数据类型将不兼容。
(来自:here)
在此处查找解决方案:
how to find if there is a number in a string
主要问题是您从不检查数字是否存在。
尝试这样的事情:
while True: #loop while input invalid
try:
Name = input("enter name")
if not Name.isalpha(): # checks whether Name is not letters only
raise TypeError #Raise error if numbers are there
else:
break #Else, exit the loop
except TypeError:
print("Please enter letters")
try:
Name = input("enter name")
except TypeError:
print("Please enter letters")
即使我输入数字,也不会打印消息。
不会出现类型错误,因为您输入了一个字符串并将其保存为一个字符串。 TypeError 是 Python 编程语言中的异常,当操作中对象的数据类型不合适时会发生这种异常。例如,如果您尝试用字符串除以整数,则整数和字符串对象的数据类型将不兼容。 (来自:here)
在此处查找解决方案: how to find if there is a number in a string
主要问题是您从不检查数字是否存在。
尝试这样的事情:
while True: #loop while input invalid
try:
Name = input("enter name")
if not Name.isalpha(): # checks whether Name is not letters only
raise TypeError #Raise error if numbers are there
else:
break #Else, exit the loop
except TypeError:
print("Please enter letters")