python 异常处理

 

文件写入操作,如果发生IO异常,则打印没找到文件,读取文件失败异常。

try:
    fh = open("testfile", "w")
    fh.write("这是一个测试文件,用于测试异常!!")
except IOError:
    print "Error: 没有找到文件或读取文件失败"
else:
    print "内容写入文件成功"
    fh.close()

相当于java的try catch语句

异常的参数

# !/usr/bin/python
# -*- coding: UTF-8 -*-
# 定义函数
def temp_convert(var):
    try:
        return int(var)
    except ValueError, Argument:
        print "参数没有包含数字\n", Argument


# 调用函数
temp_convert("xyz");

结果:

参数没有包含数字
invalid literal for int() with base 10: 'xyz'

触发异常

# !/usr/bin/python
# -*- coding: UTF-8 -*-

# 定义函数
def mye(level):
    if level < 1:
        raise Exception("Invalid level!", level)  # 触发异常后,后面的代码就不会再执行
try:
    mye(0)  # 触发异常 level = 0 因为小于0 ,上面出发了异常
except "Invalid level!":
    print 1
else:
    print 2

结果:

Traceback (most recent call last):
  File "D:/python_study/six.py", line 36, in <module>
    mye(0)  # 触发异常 level = 0 因为小于0 ,上面出发了异常
  File "D:/python_study/six.py", line 34, in mye
    raise Exception("Invalid level!", level)  # 触发异常后,后面的代码就不会再执行
Exception: ('Invalid level!', 0)

 

posted @ 2017-04-07 15:58  西北野狼  阅读(220)  评论(0编辑  收藏  举报