Python练习-调试和测试

这篇博客介绍了Python代码调试和测试的方法,包括print、logging、pdb调试和unittest单元测试。通过示例展示了如何使用unittest进行单元测试,以及如何利用doctest对函数注释中的代码进行测试。在练习过程中,通过调试发现并修复了函数中的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本部分学习Python代码调试和测试方法。可用的代码调试方法有:

  • print打印
  • logging记录
  • pdb调试/pdb.settrace()
  • unittest单元测试等。

样例代码如下:

# 程序调试
# 1.用断言
import pdb


def div(s):
    n = int(s)
    assert n != 0, "n is zero"
    return 10 / n


div(1)
# 可以在启动时增加 -O参数关闭断言

# 2.用logging
import logging

s = '5'
n = int(s)
logging.basicConfig(level=logging.INFO)
logging.info('n = %d' % n)
print(10 / n)

# 3. 用pdb.set_trace(),执行到此,进入pdb模式
# pdb.set_trace()
s = '0'
n = int(s)
logging.basicConfig(level=logging.INFO)
logging.info('n = %d' % n)
# print(10 / n)

# 4. 单元测试unittest
import unittest


class Dict(dict):

    def __init__(self, **kw):
        super().__init__(**kw)

    def __getattr__(self, key):
        try:
            return self[key]
        except KeyError:
            raise AttributeError(r"'Dict' object has no attribute '%s'" % key)

    def __setattr__(self, key, value):
        self[key] = value


# 从unittest.TestCase继承。
# 以test开头的方法就是测试方法
class unitTestDemo(unittest.TestCase):

    def test_init(self):
        d = Dict(a=1, b='test')
        print("testing...")
        self.asse
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值