Python异常编码处理

来源:互联网 发布:大连品牌网络推广公司 编辑:程序博客网 时间:2024/06/02 02:26

Python异常编码处理

1.主动触发异常

  • raise

    raise TypeErrorraise TypeError('Error Message')    #添加错误提示
  • assert

    a = 1assert a > 0assert a > 0,"a must lg 0"    #添加错误提示

2.处理特定异常

  • try/except

    try:  int('hello')except ValueError:  print('invaild value')try:  int('hello')except ValueError as e:  print(e)

3.处理多个异常

  • 用元组包含多种异常

    try:    file = open('test.txt', 'r')except (IOError, EOFError) as e:    print "error occurred:", e
  • 多个except语句

    try:    file = open('test.txt', 'r')except (IOError, EOFError) as e:    print "error occurred:", e
  • 捕获所有异常

    try:    3 / 0except:    print "error occurred"
  • 使用Exception捕获异常

    try:    "123" / 2except Exception as e:    print e.message

4.else/finally语句

#异常没有触发时执行else后的代码try:    f=open('123.txt','w')    f.write({'name':'ming'})except Exception as e:    print('Error:'e)else:    f.write({'age':18})    f.close()    print('file has closed')#不管有没有触发异常,都会执行finally后的代码try:    f=open('123.txt','w')    print(f.write({'name':'ming'}))except Exception as e:    print('Error:'e)finally:    f.close()    print('file has closed')

5.自定义异常

当现存的异常类型没有自己想要的效果时,可以自己创建属于自己的异常类型

class RangeError(Exception):    #添加错误提示    def __str__(self):        return repr('the value out of range')def process(value):      if value < 0 or value > 10000:        raise RangeError    pass
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 公司破产拖欠员工工资怎么办 白玉蜗牛下蛋了怎么办 黄牛卖不出的票怎么办 鸡受风寒不产蛋怎么办 蛋鸡感冒不下蛋怎么办 牛肉煮老了怎么办 牛肉炖碎了怎么办 比值审敛法等于1怎么办 华为手机停止运行怎么办 易事通卡怎么办延期 三星手机照相机故障怎么办 凌晨一点到机场怎么办 凌晨3点醒来怎么办 凌晨四五点咳嗽怎么办 凌晨4点大便怎么办 熊猫小课付了费怎么办 华为手机系统升级后卡机怎么办 孕妇汗脚脚臭怎么办 巴基斯坦留学生丢失护照怎么办 vivox20耳机进水了怎么办 轴圆齿之间间隙大怎么办 浩辰cad2017保存不了怎么办 会议无poster版块怎么办 大四考研失败了怎么办 博士退学老师不同意怎么办? 贴双眼皮眼皮松怎么办 dpf灯亮了怎么办 60岁社保没交满怎么办 老公素质太差怎么办 耿彦波退休了太原怎么办 宫腔镜三天后同房了怎么办 开关失灵关不了怎么办 灯的开关关不掉怎么办? 身上毛孔粗大怎么办呀 脸被牙膏灼伤怎么办 wifi要登录认证怎么办 本科没有选导师怎么办 预授权撤销了怎么办 软件连不上网怎么办 手机屏幕出现有道词典怎么办 孩子总觉得没错怎么办