返回介绍

4.4 包的安装

发布于 2024-01-23 21:41:46 字数 1342 浏览 0 评论 0 收藏 0

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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文