实战IT培训机构_黄色激情网站_IT培训班选大学生IT技术培训中心_黄色激情视频网站_中公优就业

400-650-7353
您所在的位置:首頁 > IT干貨資料 > python > 【Python基礎知識】捕獲多個異常

【Python基礎知識】捕獲多個異常

  • 來源:
  • 2021-08-30 16:38:09
  • 閱讀()
  • 分享
  • 手機端入口

除了可以捕獲到指定的異常和沒有發生異常這兩種情況外,還有第三種情況,就是在try和except之間的代碼塊中,發生了異常,但不是指定的異常:

  1. try
  2.     # 將輸入x和y的代碼放進try中,其余不變 
  3.     x = int(input('請輸入被除數:')) 
  4.     y = int(input('請輸入除數:')) 
  5.     result = x / y 
  6.     print('結果為{}'.format(result)) 
  7. except ZeroDivisionError: 
  8.     print('除數不能為零'
  9. print('=' * 30

嘗試輸入被除數為一個不能轉換為整數的字符串,如字母'c':

  1. 請輸入被除數:c 
  2. Traceback (most recent call last): 
  3.   File "example.py", line 2in <module> 
  4.     x = int(input('請輸入被除數:')) 
  5. ValueError: invalid literal for int() with base 10'c' 

Python解釋器提示出錯了,ValueError,而上述代碼只能捕獲ZeroDivisionError,這就是第三種情況,如果發生了異常,但不是指定的ZeroDivisionError,Python解釋器仍然報錯(除非在外層的try-except語句中處理了這個異常)。

如果想同時處理這兩種異常,那么可以將這兩種異常名稱全部寫在except語句后面,用逗號分隔開,并用括號括起來:

  1. try
  2.     x = int(input('請輸入被除數:')) 
  3.     y = int(input('請輸入除數:')) 
  4.     result = x / y 
  5.     print('結果為{}'.format(result)) 
  6. except (ZeroDivisionError, ValueError): 
  7.     print('除數不能為零, 且被除數與除數必須為數字'
  8. print('=' * 30

運行修改后的程序,輸入被除數為'c':

  1. 請輸入被除數:c 
  2. 除數不能為零, 且被除數與除數必須為數字 
  3. ============================== 

由此可見,成功處理了ValueError。再次運行程序,試試它還能不能處理ZeroDivisionError:

  1. 請輸入被除數:10 
  2. 請輸入除數:0 
  3. 除數不能為零, 且被除數與除數必須為數字 
  4. ============================= 

可以同時處理這兩種異常,要處理更多的異常也是如此,只要在括號中添加待處理的異常即可。除此之外,還可以使用多個except關鍵字,分別處理這兩種異常的情況,這樣做的好處是可以根據不同的異常進行不同的處理:

  1. try
  2.     x = int(input('請輸入被除數:')) 
  3.     y = int(input('請輸入除數:')) 
  4.     result = x / y 
  5.     print('結果為{}'.format(result)) 
  6. except ZeroDivisionError:   # 處理ZeroDivisionError 
  7.     print('除數不能為零!'
  8. except ValueError:   # 處理ValueError 
  9.     print('除數與被除數必須為數字!'
  10. print('=' * 30

測試是否能處理這兩種異常,首先測試是否處理ValueError:

  1. 請輸入被除數:s 
  2. 除數與被除數必須為數字! 
  3. ============================== 

然后測試是否處理ZeroDivisionError:

  1. 請輸入被除數:10 
  2. 請輸入除數:0 
  3. 除數不能為零! 
  4. ============================== 

由此可見,使用兩個except關鍵字能夠分別處理這兩種異常情況。

文章“【Python基礎知識】捕獲多個異常”已幫助

更多內容

>>本文地址:http://m.jecan.cn/zhuanye/2021/69825.html

THE END  

聲明:本站稿件版權均屬中公教育優就業所有,未經許可不得擅自轉載。

1 您的年齡

2 您的學歷

3 您更想做哪個方向的工作?

獲取測試結果
  • 大前端大前端
  • 大數據大數據
  • 互聯網營銷互聯網營銷
  • JavaJava
  • Linux云計算Linux
  • Python+人工智能Python
  • 嵌入式物聯網嵌入式
  • 全域電商運營全域電商運營
  • 軟件測試軟件測試
  • 室內設計室內設計
  • 平面設計平面設計
  • 電商設計電商設計
  • 網頁設計網頁設計
  • 全鏈路UI/UE設計UI設計
  • VR/AR游戲開發VR/AR
  • 網絡安全網絡安全
  • 新媒體與短視頻運營新媒體
  • 直播帶貨直播帶貨
  • 智能機器人軟件開發智能機器人
 

快速通道fast track

近期開班時間TIME

主站蜘蛛池模板: 清管器,管道清管器,聚氨酯发泡球,清管球 - 承德嘉拓设备 | 游泳池设计|设备|配件|药品|吸污机-东莞市太平洋康体设施有限公司 | 中药超微粉碎机(中药细胞级微粉碎)-百科 | 氢氧化钾厂家直销批发-济南金昊化工有限公司 | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | uv机-uv灯-uvled光固化机-生产厂家-蓝盾机电| 锂电池砂磨机|石墨烯砂磨机|碳纳米管砂磨机-常州市奥能达机械设备有限公司 | 脉冲除尘器,除尘器厂家-淄博机械| 临时厕所租赁_玻璃钢厕所租赁_蹲式|坐式厕所出租-北京慧海通 | 垃圾压缩设备_垃圾处理设备_智能移动式垃圾压缩设备--山东明莱环保设备有限公司 | 移动机器人产业联盟官网 | EPDM密封胶条-EPDM密封垫片-EPDM生产厂家 | 不锈钢反应釜,不锈钢反应釜厂家-价格-威海鑫泰化工机械有限公司 不干胶标签-不干胶贴纸-不干胶标签定制-不干胶标签印刷厂-弗雷曼纸业(苏州)有限公司 | 水质监测站_水质在线分析仪_水质自动监测系统_多参数水质在线监测仪_水质传感器-山东万象环境科技有限公司 | 无压烧结银_有压烧结银_导电银胶_导电油墨_导电胶-善仁(浙江)新材料 | 煤粉取样器-射油器-便携式等速飞灰取样器-连灵动 | 液氨泵,液化气泵-淄博「亚泰」燃气设备制造有限公司 | 冷却塔改造厂家_不锈钢冷却塔_玻璃钢冷却塔改造维修-广东特菱节能空调设备有限公司 | 盘式曝气器-微孔曝气器-管式曝气器-曝气盘-斜管填料 | 郑州市前程水处理有限公司 | 合金ICP光谱仪(磁性材料,工业废水)-百科 | 交联度测试仪-湿漏电流测试仪-双85恒温恒湿试验箱-常州市科迈实验仪器有限公司 | 恒温振荡混匀器-微孔板振荡器厂家-多管涡旋混匀器厂家-合肥艾本森(www.17world.net) | 天命文免费算命堂_自助算命_自由算命系统_长文周易 | 中国品牌门窗网_中国十大门窗品牌_著名门窗品牌 | 上海盐水喷雾试验机_两厢式冷热冲击试验箱-巨怡环试 | 电缆故障测试仪_电缆故障定位仪_探测仪_检测仪器_陕西意联电气厂家 | 金属检测机_金属分离器_检针验针机_食品药品金属检探测仪器-广东善安科技 | 岸电电源-60HZ变频电源-大功率变频电源-济南诚雅电子科技有限公司 | 通风气楼_通风天窗_屋顶风机-山东美创通风设备有限公司 | ★济南领跃标识制作公司★济南标识制作,标牌制作,山东标识制作,济南标牌厂 | 茶楼装修设计_茶馆室内设计效果图_云臻轩茶楼装饰公司 | 天津暖气片厂家_钢制散热器_天津铜铝复合暖气片_维尼罗散热器 | 汽液过滤网厂家_安平县银锐丝网有限公司 | 外贸资讯网 - 洞悉全球贸易,把握市场先机 | 深圳公司注册-工商注册公司-千百顺代理记账公司 | 层流手术室净化装修-检验科ICU改造施工-华锐净化工程-特殊科室建设厂家 | 电镀整流器_微弧氧化电源_高频电解电源_微弧氧化设备厂家_深圳开瑞节能 | 辐射仪|辐射检测仪|辐射巡测仪|个人剂量报警仪|表面污染检测仪|辐射报警仪|辐射防护网 | NBA直播_NBA直播免费观看直播在线_NBA直播免费高清无插件在线观看-24直播网 | 布袋除尘器-单机除尘器-脉冲除尘器-泊头市兴天环保设备有限公司 布袋除尘器|除尘器设备|除尘布袋|除尘设备_诺和环保设备 | 长江船运_国内海运_内贸船运_大件海运|运输_船舶运输价格_钢材船运_内河运输_风电甲板船_游艇运输_航运货代电话_上海交航船运 |