python 中 dist-packages 和 site-packages 的区别

site-packages 和 dist-packages 的区别

dist-packages is a Debian-specific convention that is also present in its derivatives, like Ubuntu. Modules are installed to dist-packages when they come from the Debian package manager into this location:/usr/lib/python2.7/dist-packages

dist-packages 是 Debian特定惯例,这也存在于像是ubuntu上(ubuntu 是从 debian衍生来的)。 如果使用Debian软件管理器安装, 模块将被安装到 dist-packages
查看python库路径:

from distutils.sysconfig import get_python_lib
print(get_python_lib())

Since easy_install and pip are installed from the package manager, they also use dist-packages, but they put packages here: /usr/local/lib/python2.7/dist-packages
自从 easy_install 和 pip (注: 是python的软件管理其,python有许许多多的软件) 使用,他们也使用 dist-packages,但是 路径是:/usr/local/lib/python2.7/dist-packages

根据现实场景:

  • sudo apt-get install 安装的package存放在 /usr/lib/python2.7/dist-packages目录中

  • pip 或者 easy_install安装的package存放在/usr/local/lib/python2.7/dist-packages目录

  • 手动从源代码安装的package存放在site-packages目录中

顺带说下包管理工具

Python的包管理工具常见的有easy_install, setuptools, 还有pip, distribute可以看到distribute是setuptools的替代方案,pip是easy_install的替代方案. 而setuptools 和 easy_install 已经越来越不被维护了,所以建议大家试用他们的替代版, 而如果要说 distribute 和 pip 的区别,那么就是pip 的底层实现调用了 distribute 或者 setuptools

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
回答: 引用\[1\]和\[2\]解释了dist-packages是Debian特定的惯例,用于安装第三方Python软件。它取代了site-packages,以减少系统自带Python和手动安装的Python之间的冲突。所以,当你在阿里云上安装numpy时,可能会出现在dist-packages目录下有多个版本的numpy的情况。引用\[3\]提到了一个解决方法,即使用sudo pip uninstall命令删除指定版本的numpy。但是,如果出现Not uninstalling enum34 at /usr/lib/python2.7/dist-packages, outside environment /usr的错误提示,可能需要手动删除对应的enum34文件。你可以进入/usr/lib/python2.7/dist-packages目录,查找并删除名为enum34的文件,然后再次尝试使用sudo pip uninstall命令删除enum34。这样应该能够成功删除enum34版本。 #### 引用[.reference_title] - *1* *2* [python-Not uninstalling at /usr/lib/python2.7/dist-packages, owned by OS](https://blog.csdn.net/sinat_21302587/article/details/74279098)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [使用pip卸载包时出现“Not uninstalling *** at /usr/lib/python2.7/dist-packages, owned by OS解决”](https://blog.csdn.net/TYOUKAI_/article/details/78116912)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值