文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
4.4 包的安装
setuptools引入了第一个安装包的有用命令easy_install。它通过一条命令即可从Egg归档文件中安装Python模块。遗憾的是,easy_install从一开始就因为它有争议的行为(如忽视系统管理员的最佳实践以及缺少卸载功能)而口碑不好。
pip项目提供了更好的安装包的方式。它的开发很活跃,维护良好,并且被包含在Python 3.4中1。它可以从PyPI、tarball或者Wheel(参见4.3节)归档中安装或卸载包。
它的使用很简单:
$ pip install --user voluptuous Downloading/unpacking voluptuous Downloading voluptuous-.tar.gz Storing download in cache at ./.cache/pip/https%%%2Fpypi.python.org%2 Fpackages%2Fsource%2Fv%2Fvoluptuous%2Fvoluptuous-.tar.gz Running setup.py egg_info for package voluptuous WARNING: Could not locate pandoc, using Markdown long_description. Requirement already satisfied (use --upgrade to upgrade): distribute in /usr/lib/python2.7/dist-packages (from voluptuous) Installing collected packages: voluptuous Running setup.py install for voluptuous WARNING: Could not locate pandoc, using Markdown long_description. Successfully installed voluptuous Cleaning up...
也可以通过提供--user选项让pip将包安装在home目录中。这可以避免将包在系统层面安装而造成操作系统目录的污染。
如果要通过pip重复安装同一个包,可以设置本地缓存从而避免每次都去下载这个包。只需要将环境变量PIP_DOWNLOAD_CACHE指向一个目录,pip就用它来保存下载的tarball,并且在每次下载包之前先检查这个位置。这在使用tox时非常有用,tox需要下载包来构建虚拟环境。也可以在~/.pip/pip.conf文件中添加download-cache选项。
可以使用pip freeze命令列出当前已安装的包:
$ pip freeze Babel==1.3 Jinja2== commando= ...
所有其他的安装工具都正在被废弃以支持pip,所以使用它作为包管理的一站式解决方案应该不会有什么问题。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论