python学习之调试:
编写的代码不会都能完好运行,所以需要调试,解决错误和异常,常有几种方法:
1 通过printf()来打印信息。但在发布时无法删除;
2 通过assert 条件表达式,‘提示信息’;启动解释器时通过 -O参数来关闭 提示信息:python3 -O
3 通过logging日志来输出信息,并且可以设置日志的级别:debug, info,warning, error
import logging
logging.basicConfig(level=logging.INFO)
logging,info("提示信息")
4 通过gdb:python3 -m gdb filename.py,以参数-m pdb 启动
参数 1:查看代码
参数 n:单步执行
参数 p 变量:查看变量
参数 q:退出调试
断点调试:在需要停下来断点调试的地方加入 pdb.set_trace() ,,然后可以用p 查看变量,继续运行。
测试:
6.1单元测试:引入python自带的 测试模块:
import unittest
class TestXXX(unittest.TestCase): #必须以Test开头
...
if __name__ == '__main__':#在 myXXX_test.py 的最后加上两行代码 ,就可以将文件当做正常的 python 脚本运行
unittest.main()
方法2:批量调试 python3 -m unittest TestXXX.py
setUp()和 tearDown()方法:加载和卸载
6.2文档测试:以”“” >>> “”“之间的注释,在命令行模块下可以直接输出。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
2015-05-27 AD9 笔记: