【问题标题】:Virtualenvwrapper not working due to too many python versions installed由于安装了太多 python 版本,Virtualenvwrapper 无法正常工作
【发布时间】:2018-03-08 21:19:05
【问题描述】:

我关注this guide 以便能够使用 OpenCv。

在说要获取脚本 (source /usr/local/bin/virtualenvwrapper.sh) 的步骤中,我收到以下错误消息:

/home/user/anaconda3/bin/python: Error while finding module specification for 'virtualenvwrapper.hook_loader' (ModuleNotFoundError: No module named 'virtualenvwrapper')
virtualenvwrapper.sh: There was a problem running the initialization hooks.

If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenvwrapper has been installed for
VIRTUALENVWRAPPER_PYTHON=/home/user/anaconda3/bin/python and that PATH is
set properly.

如果我运行 whereis python 我会得到/usr/bin/python2.7 /usr/bin/python2.7-config /usr/bin/python3.6 /usr/bin/python3.5-config [...]

我觉得这是问题的根源,因为在做python -V 给我Python 3.6.1 :: Anaconda 4.4.0 (64-bit) 而不是 Python 2.7.12,我被告知应该是 Ubuntu 默认安装,如果我从 PATH 中删除 anaconda 就会得到。

所以我感觉正在发生的是 anaconda 正在强制(也许这一切都是我的错,我以这种方式配置它并且不记得)成为默认的 python 执行,并且是 3.6,当我尝试安装时这个包它不能运行,因为它需要别的东西。

有什么办法可以收拾这个烂摊子吗?因为问题是我不知道它应该如何工作,所以我目前无法修复它。

【问题讨论】:

  • 在你的终端运行pip freeze | grep virtualenvwrapper的结果是什么?
  • 我现在有两个终端。在我强制 anaconda 成为 PATH 的最后一个变量的那个中,我得到:virtualenvwrapper==4.8.2。在它与安装时一样的那个中,它冻结并且什么都不返回。
  • 在后面的终端中,安装的是什么版本的Python?
  • 3.6,更具体地说:$python -V 返回:Python 3.6.1 :: Anaconda 4.4.0(64 位)
  • 试试pip3 install virtualenvwrapper

标签: python ubuntu anaconda virtualenv virtualenvwrapper


【解决方案1】:

改变你的路径变量 -Point To python 2.7

【讨论】:

  • 我的路径变量现在看起来像 /home/user/anaconda3/bin:/home/user/bin:/home/user/.local/bin:/usr/local/sbin:/usr /local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin 所以,看不到python。我该怎么做?不管怎样,谢谢
  • 查看 echo $PYTHONPATH 返回什么,如果它不为空,请尝试此操作。 PYTHONPATH=/usr/lib/my_python_distribution 导出 PYTHON
  • 它是空的。这超出了我的知识范围哈哈,​​谢谢你帮助我!
【解决方案2】:

不确定此解决方案将来是否会帮助其他任何人,但由于这是我自己的问题,这就是显然对我有用的方法。我这么说是因为所有这些问题都来自安装 openCV,而我还没有完成,也没有比刚开始时更多的经验。

在 bashrc 中:export VIRTUALENVWRAPPER_PYTHON=/home/youruser/anaconda3/bin/python3.6 export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python2.7

完成后,我可以执行source /usr/local/bin/virtualenvwrapper.sh ,即使打开的任何新终端一直显示错误消息

【讨论】:

    猜你喜欢
    • 2021-10-30
    • 2021-05-24
    • 1970-01-01
    • 1970-01-01
    • 2020-03-23
    • 1970-01-01
    • 2020-12-13
    • 1970-01-01
    • 2022-07-01
    相关资源
    最近更新 更多