我刚刚安装了 Ubuntu 18.04,和旧版本一样,它已经安装了 Python 2 和 3。但是我尝试安装的所有内容都需要 sudo 或 --user 标志。
问题是有些图书馆试图创建内容没有/usr/local
,因此我得到没有权限(例如:试图逃跑python3 -m spacy download en
)。
我该如何解决这个问题?我应该只安装 Virtualenv 而不删除现有的 Python 版本吗?Virtualenv 会处理这个问题并防止冲突吗?
答案1
是的,virtualenv 可以工作。否则只需授予自己对 /usr/local 的写入权限即可。
答案2
如果您尝试安装(添加东西)到根拥有的目录,例如/usr/lib
,/usr/local/lib
或/usr/share
,则在运行时应使用“sudo”。
python3 -m spacy download en
似乎您正在将 python3 库安装到 site-packages 中,该库绝对是 root 拥有的。
因此,如果您希望“spacy”在机器上可用,则应使用 sudo。如果您的项目只需要 spacy,请创建 vritualenv 并填充必要的库。