异常处理和单元测试

导读:本篇文章讲解 异常处理和单元测试,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

异常处理

try—except语句:

try:
    print(8/1)
except ZeroDivisionError as e:
    print("出现了除数为零的情况")
    print(ZeroDivisionError)
    print(e)
#使用try——except语句,不影响程序运行,后续语句可以运行
print("这里可以正常执行"

try—except多个异常:

try:
    print(a/2)

except ZeroDivisionError  :
    print("出现了除数为零的情况")
except NameError:
    print("变量未定义")
#使用try——except语句,不影响程序运行,后续语句可以运行
print("这里可以正常执行")

结果:

变量未定义
这里可以正常执行

try—except——else多个异常:

try:
   x=8/2

except ZeroDivisionError  :
    print("出现了除数为零的情况")
except NameError:
    print("变量未定义")
else:
    print("x=",x)
#使用try——except语句,不影响程序运行,后续语句可以运行
print("这里可以正常执行")

结果:

x= 4.0
这里可以正常执行

finally语句:
没出现异常

try:
   x=8/2
except NameError:
    print("变量未定义")
else:
    print("x=",x)
finally:
    print("此语法无论出现没出现错误都会被执行")
#使用try——except语句,不影响程序运行,后续语句可以运行
print("这里可以正常执行")

输出结果:

x= 4.0
此语法无论出现没出现错误都会被执行
这里可以正常执行

出现异常:

try:
   x=a/2
except NameError:
    print("变量未定义")
else:
    print("x=",x)
finally:
    print("此语法无论出现没出现错误都会被执行")
#使用try——except语句,不影响程序运行,后续语句可以运行
print("这里可以正常执行")

结果:

变量未定义
此语法无论出现没出现错误都会被执行
这里可以正常执行

单元测试:

相当于一个自动化测试的功能。
在test.py文件里

def myabs(x):#计算一个数字的相反数
    if x<0:
        return -x
    else:
        return x

在另一个文件里

import unittest
from test import myabs #需要导入两个模块
class mytest(unittest.TestCase): #创建一个继承类()
    def test_myabs(self): #测试一个负数的情况
        x=myabs(-5)
        self.assertEqual(x,5)
    def test_myabs2(self): #测试一个正数的情况
        x=myabs(5)
        self.assertEqual(x,5)

if __name__=='__main__':
    unittest.main()

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/61409.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!