如题,最近发现 debian 系统自带的 pip 已经不让自行安装 packages 了,提示“This environment is externally managed”。我查了一下,发现大概是 PEP 668 要求的,为了防止把系统环境搞乱,保护系统工具可用。

可是我不理解这样做和传递--user 比有什么优势,用户安装在自己目录下的包也不会干扰系统工具啊。我之前一直用--user ,主要写一点脚本啥的自用。--user 下不会重复装 package ,也不需要切换虚拟环境,感觉还挺方便的。
举报· 57 次点击
登录 注册 站外分享
3 条回复  
ho121 小成 2024-10-10 08:09:02
比如要开发两个应用,一个比较旧,一个比较新,两个应用都依赖 A 但版本不一样。这种情况下用虚拟环境最适合了
NoOneNoBody 小成 2024-10-10 01:55:54
A 包装在系统,那 --user 装 B 包,而 B 包指定了一个低版的 A 包作为依赖,怎么办?
momocraft 小成 2024-10-10 00:40:28
venv 可以有任意多個 同一個包可以有多份(在不同 venv )

全局 pip 的--user 一般就裝在 HOME 下一個位置
返回顶部