【发布时间】:2016-10-29 22:59:25
【问题描述】:
我正在学习python中的异常,我有一些疑问:
我们可以在 raise 中使用任何名称作为错误吗?
就像我在使用 raise 时所读到的那样,您必须定义错误类型,所以我不能使用任何字符串名称作为错误吗?比如SkienaError 或者我必须记住所有的错误类型并且必须只使用那些错误类型名称?
a=int(input())
if a!=10:
raise SkienaError
else:
print(a,"pp")
第二个疑问是假设我希望用户应该输入 int 但他输入字符串所以一个断言弹出但我希望程序应该继续而不终止并再次要求输入直到用户给出 int 类型输入,我不想使用 while在这里循环我想知道是否可以在 python 中使用 raise 或 assert ?喜欢:
a=int(input())
assert type(a)==int
print(a,"hello")
所以如果用户给出 str 类型的输入,那么程序是否有可能不断给出错误并询问新的输入,直到输入类型为 int。
【问题讨论】:
标签: python python-2.7 python-3.x