实战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://www.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,定制海外IP-访客王 | 探鸣起名网-品牌起名-英文商标起名-公司命名-企业取名包满意 | 预制舱-电力集装箱预制舱-模块化预制舱生产厂家-腾达电器设备 | 佛山商标注册_商标注册代理|专利注册申请_商标注册公司_鸿邦知识产权 | 消泡剂_水处理消泡剂_切削液消泡剂_涂料消泡剂_有机硅消泡剂_广州中万新材料生产厂家 | 颚式破碎机,圆锥破碎机,制砂机-新乡市德诚机电制造有限公司 | 柴油发电机组_柴油发电机_发电机组价格-江苏凯晨电力设备有限公司 | 北京翻译公司_同传翻译_字幕翻译_合同翻译_英语陪同翻译_影视翻译_翻译盖章-译铭信息 | 臭氧老化试验箱,高低温试验箱,恒温恒湿试验箱,防水试验设备-苏州亚诺天下仪器有限公司 | 橡胶接头_橡胶软接头_可曲挠橡胶接头-巩义市创伟机械制造有限公司 | 深圳诚暄fpc首页-柔性线路板,fpc柔性线路板打样生产厂家 | 布袋式除尘器|木工除尘器|螺旋输送机|斗式提升机|刮板输送机|除尘器配件-泊头市德佳环保设备 | 洗砂机械-球磨制砂机-洗沙制砂机械设备_青州冠诚重工机械有限公司 | 防火门|抗爆门|超大门|医疗门|隔声门-上海加汇门业生产厂家 | 郑州大巴车出租|中巴车租赁|旅游大巴租车|包车|郑州旅游大巴车租赁有限公司 | 100_150_200_250_300_350_400公斤压力空气压缩机-舰艇航天配套厂家 | NBA直播_NBA直播免费观看直播在线_NBA直播免费高清无插件在线观看-24直播网 | 船老大板材_浙江船老大全屋定制_船老大官网 | 艺术涂料|木纹漆施工|稻草漆厂家|马来漆|石桦奴|水泥漆|选加河南天工涂料 | 电镀整流器_微弧氧化电源_高频电解电源_微弧氧化设备厂家_深圳开瑞节能 | 洛阳防爆合格证办理-洛阳防爆认证机构-洛阳申请国家防爆合格证-洛阳本安防爆认证代办-洛阳沪南抚防爆电气技术服务有限公司 | 天津热油泵_管道泵_天津高温热油泵-天津市金丰泰机械泵业有限公司【官方网站】 | 长沙网站建设制作「网站优化推广」-网页设计公司-速马科技官网 | 内六角扳手「厂家」-温州市威豪五金工具有限公司 | 桁架机器人_桁架机械手_上下料机械手_数控车床机械手-苏州清智科技装备制造有限公司 | 山东活动策划|济南活动公司|济南公关活动策划-济南锐嘉广告有限公司 | 企业管理培训,企业培训公开课,企业内训课程,企业培训师 - 名课堂企业管理培训网 | 计算机毕业设计源码网| 北京乾茂兴业科技发展有限公司 | 液压油缸-液压缸厂家价格,液压站系统-山东国立液压制造有限公司 液压油缸生产厂家-山东液压站-济南捷兴液压机电设备有限公司 | 工业车间焊接-整体|集中除尘设备-激光|等离子切割机配套除尘-粉尘烟尘净化治理厂家-山东美蓝环保科技有限公司 | 首页_欧瑞传动官方网站--主营变频器、伺服系统、新能源、软起动器、PLC、HMI | 道达尔润滑油-食品级润滑油-道达尔导热油-合成导热油,深圳道达尔代理商合-深圳浩方正大官网 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 偏心半球阀-电动偏心半球阀-调流调压阀-旋球阀-上欧阀门有限公司 | 赛尔特智能移动阳光房-阳光房厂家-赛尔特建筑科技(广东)有限公司 | 厦门ISO认证|厦门ISO9001认证|厦门ISO14001认证|厦门ISO45001认证-艾索咨询专注ISO认证行业 | 中天寰创-内蒙古钢结构厂家|门式刚架|钢结构桁架|钢结构框架|包头钢结构煤棚 | 济南品牌包装设计公司_济南VI标志设计公司_山东锐尚文化传播 |