zoukankan      html  css  js  c++  java
  • [python] try......except.....finally

    try:将有可能导致出现异常的语句放到try块中,如果使用了try语句后,后面的程序必须至少要跟一个except或者finally,否则程序会报错

    except:捕获try块中可能出现的异常

    finally:不管程序是否有无异常,都会最终执行该语句

    for example as below:

     1 #-*- coding:utf-8 -*-
     2 '''
     3 Created on 2018年7月28日
     4 
     5 @author: anyd
     6 '''
     7 def fun(a,b):
     8     try:
     9         value = a/b
    10         print "The result is:",value
    11 
    12     except Exception:
    13         print 'The division can not be 0'
    14          
    15     finally:
    16         print 'done'
    17 
    18 fun(1,1)

    结果如下:这个是正常程序,未触发异常

     1 The result is: 1

    2 done 

    下面给一个有异常的如下:

     1 #-*- coding:utf-8 -*-
     2 '''
     3 Created on 2018年7月28日
     4 
     5 @author: anyd
     6 '''
     7 def fun(a,b):
     8     try:
     9         value = a/b
    10         print "The result is:",value
    11 
    12     except Exception:
    13         print 'The division can not be 0'
    14          
    15     finally:
    16         print 'done'
    17 
    18 fun(1,0)

    结果如下:由于给除数赋值为0了,所以程序运行肯定会有问题,这样就会触发except

     1 The division can not be 0

    2 done 

    以上通过去捕获异常,大家可以看到python其实上也是运行了成功了,如果不增加异常捕获的话,大家可以看看下面例子,整个python就直接报错了无法运行

     1 #-*- coding:utf-8 -*-
     2 '''
     3 Created on 2018年7月28日
     4 
     5 @author: anyd
     6 '''
     7 def fun(a,b):
     8     try:
     9         value = a/b
    10         print "The result is:",value
    11 
    12 #     except Exception:
    13 #         print 'The division can not be 0'
    14          
    15     finally:
    16         print 'done'
    17 
    18 fun(1,0)

    输出如下:

    1 done
    2 Traceback (most recent call last):
    3   File "C:Usersanydeclipse-workspace	est.py", line 18, in <module>
    4     fun(1,0)
    5   File "C:Usersanydeclipse-workspace	est.py", line 9, in fun
    6     value = a/b
    7 ZeroDivisionError: integer division or modulo by zero
  • 相关阅读:
    【转】批处理第三方命令行工具汇总(2014-11-10更新)
    爬虫问题汇总 + 解决
    ocs的沟通平台
    DSCP 与IP 优先级IP优先级
    IPSec协议
    GRE 协议简介
    使用VLC创建组播流
    华为olt ma5680t常用命令详解
    Python统计列表中的重复项出现的次数的方法
    Kafka
  • 原文地址:https://www.cnblogs.com/aziji/p/9382906.html
Copyright © 2011-2022 走看看