4.1 避免重造轮子
4.1.1 学习Python标准库
编写优雅代码的一部分是自由使用标准库。不知觉地重新编码实现标准库中的功能,可能是新手常做的时。Python通常被认为包含一切。标准库中的包涵盖很广泛的领域。
使用标准库有两个明显的好处。最明显的是,给你节省了很多时间,不需要从零开始。对那些阅读和维护代码的人同样重要,如果你使用他们都熟悉的内容,将会节省很多时间。
请记住,学习和编写优雅Python的目的是编写清晰,可维护和无缺陷的代码。没有什么比重用Python核心开发人员编写的代码更能确保你代码的质量了。
在标准库中发现并修复了的错误,你的代码将随着每一个Python版本的发布而得到改善,不需要动一根手指头。
4.1.2 学会使用PyPI(Python包索引)
如果Python标准库中没有你需要的包,PyPI将会派上用场。本文写作的时候,索引库中大约有27000个包。如果你想完成一个特殊的任务,不能在PyPI找到一个相关的包,很可能不会存在。
该索引是全文搜索的,包含Python2 和 Python 3。当然,并不是所有的软件包都是相同的(或同等维护)所以一定要检查包最后更新的时间。一个包含文档的包在像ReadTheDocs这样的网站上外部托管是一个好兆头,就像一个在GitHub或Bitbucket等网站上可以找到源代码。现在你发现了一个看起来很有前途的软件包,你怎么安装它?通过目前最流行的管理第三方软件包的工具pip。简单的pip install <软件包名称>命令将会下载最新的软件包,并安装到你的site-packages目录。如果需要包的bleeding edge版本,pip也能够直接从git或mercurial中安装。
如果你创建一个通用的有用的包,强烈建议你通过PyPI发布到Python社区。后来的Python开发者会感谢你的。