#转自https://www.jianshu.com/c/00c61372c46a网址
try: #将可能发生异常的语句放入try里执行
n = int(input('number: '))
result = 100 / n
print(result)
except ValueError:
print('invalid number')
except ZeroDivisionError:
print('0 not allowed')
except KeyboardInterrupt:
print('Bye-bye')
except EOFError:
print('Bye-bye')
print('Done')
#完整语法
try:
n = int(input('number: '))
result = 100 / n
except (ValueError,ZeroDivisionError):
print('invalid number')
except (KeyboardInterrupt,EOFError):
print('\nBye-bye')
else: #不发生异常才执行
print(result)
finally: #异常与否,都执行
print('Done')
#常用的形式有try-except和try-finally
#自定义异常
def set_age(name,age):
if not 0 < age < 120:
raise ValueError('年龄超过范围') #自主决定触发什么样的异常
print('%s is %d years old' % (name,age))
def set_age2(name,age):
assert 0 < age < 120, '年龄超过范围' #断言异常
print('%s is %d years old' % (name,age))
if __name__ == '__main__':
set_age('zhangsan',20)
set_age2('lisi',200)
python-异常处理(59)
最新推荐文章于 2022-06-30 22:30:00 发布
本文详细介绍了Python中如何使用try-except语句进行异常处理,包括常见异常类型如ValueError、ZeroDivisionError等的捕获。同时,探讨了如何自定义异常,通过raise关键字触发特定异常情况,确保程序的健壮性和错误的可读性。
1627

被折叠的 条评论
为什么被折叠?



