3.7 相关模块和开发工具

《Python风格指南》(Python Style Guide,PEP8)、《Python快速参考指南》(Python Quick Reference Guide)和《Python常见问答》(Python FAQ)都是开发者很重要的“工具”。另外,还有一些模块会帮助你成为一个优秀的Python程序员。

调试器:pdbo

记录器:logging。

性能测试器:profile、hotshot、cProfile。

logging模块是在Python2.3中新增的,它定义了一些函数和类帮助你的程序实现灵活的日志系统。共有五级日志级别:紧急、错误、警告、信息和调试。

历史上,不同的人们为了满足不同的需求重复实现了很多性能测试器,Python也有好几个性能测试模块。最早的Python profile模块是Python写成的,用来测试函数的执行时间及每次脚本执行的总时间,既没有特定函数的执行时间也没有被包含的子函数调用时间。在三个profile模块中,它是最老的也是最慢的,尽管如此,它仍然可以提供一些有价值的性能信息。hotshot模块是在Python2.2中新增的,它的目标是取代profile模块,它修复了profile模块的一些错误,因为它是用C语言写成,所以它有效地提高了性能。注意hotshot重点解决了性能测试过载的问题,但却需要更多的时间来生成结果。Python2.5版修复了hotshot模块的一个关于时间计量的严重bug。

cProfile模块是Python2.5新增的,它用来替换掉已经有历史的hotshot和profile模块。作者已确认的它的一个较明显的缺点是它需要花较长时间从日志文件中载入分析结果,不支持子函数状态细节及某些结果不准。它也是用C语言来实现的。