Task1
编写一个脚本,该脚本从STDIN读取一个字符串并引发ValueError如果字符串包含超过10个字符,则异常,否则打印读取字符串。
我写了这样的代码
a = input("Enter a string")
if(len(a) > 10):
raise ValueError
else:
print(a)
Task2
使用
try ... except
子句。在里面打印错误信息,除了阻止。
我现在很困惑,我如何在这里使用try-except
,因为要在except
块中打印任何消息,程序必须在try
块中失败
我的输入将是PythonIsAmazing
您可以如下将整个内容包装在try ... except
中:
a = input("Enter a string: ")
try:
if(len(a) > 10):
raise ValueError
print(a)
except ValueError:
print("String was longer than 10 characters")
或者,如果您要提出很多不同的ValueErrors
,则可以分别给每条错误消息:
a = input("Enter a string: ")
try:
if(len(a) > 10):
raise ValueError("String was longer than 10 characters")
print(a)
except ValueError as e:
print(e)
例如:
Enter a string: test
test
Enter a string: PythonIsAmazing
String was longer than 10 characters