首页 > 其他 > 详细

011: Errors and Exceptions

时间:2016-01-10 01:39:24      阅读:203      评论:0      收藏:0      [点我收藏+]

1. Syntax errors, also known as parsing errors, are perhaps the most common kind of complaint you get while you are still learning Python

>>> print(a * 3)
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    print(a * 3)
NameError: name a is not defined

2. Even if a statement or expression is syntactically correct, it may cause an error when an attempt is made to execute it. Errors detected during execution are called exceptions and are not unconditionally fatal. And example below would be very mindful:

 

class MyError(Exception):
    def __init__(self, value):
        self.value = value
    def __str__(self):
        return repr(self.value)
        

def learn_raise_error(num):
    if num == 1:
        result = num / 0
    elif num == 2:
        result = num * a
    elif num == 3:
        result = num + learn
    elif num == 4:
        raise MyError(4)        
    elif num == 5:
        raise Exception(Unkown excetion!)
    else:
        num = 6    

for i in range(1,7,1):
    try:
        learn_raise_error(i)
    except ZeroDivisionError:
        print(ZeroDivisionError)
    except NameError:
        print(NameError)
    except TypeError:
        print(TypeError)
    except MyError:
        print(MyError)        
    except:
        print(Unkown Error)
    # when no exception, then execute else
    else:
        print(No Error)
    # clean up
    finally:
        print(clean up...)

 

3. Some objects define standard clean-up actions to be undertaken when the object is no longer needed, regardless of whether or not the operation using the object succeeded or failed.

with open("myfile.txt") as f:
    for line in f:
        print(line, end="")

 

011: Errors and Exceptions

原文:http://www.cnblogs.com/jcsz/p/5117604.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!