我正在使用 Python3.7 并按照上面提到的进行virtualenv
安装virtualenvwrapper
这篇 FreeCodeCamp 文章。
我的文件更改.bashrc
如下:
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# popo edit: Add Python alias
alias python=python3
# popo edit: Step to activate virtualenvs
export WORKON_HOME=$HOME/.virtualenvs
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
# SOme more things....
#Virtualenvwrapper settings:
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_VIRTUALENV=/home/pra-dan/.local/bin/virtualenv
source /usr/local/bin/virtualenvwrapper.sh
在采购时.bashrc
,我得到了
/usr/bin/python3: 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=/usr/bin/python3 and that PATH is
set properly.
尽管如此,我设法创建了一个环境(我不知道如何创建),并且在输入时workon
,我得到了它的名字。
但现在当我想创造一个新的环境时,我进入$ mkvirtualenv wrk -p python3
,我得到
ERROR: virtualenvwrapper could not find /home/pra-dan/.local/bin/virtualenv in your path
答案1
在 Ubuntu 18.04 上,我遇到了以下问题:
usr/bin/python3: Error while finding module specification for virtualenvwrapper.hook_loader'` (ModuleNotFoundError: No module named virtualenvwrapper`)
virtualenvwrapper.sh: There was a problem running the initialization hooks.
如果 Python 无法导入模块virtualenvwrapper.hook_loader
,请检查是否virtualenvwrapper
已安装
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
并且 PATH 设置是否正确。
sudo gedit .bashrc
在我的情况下,virtualenvwrapper
设置如下 :.bashrc
export WORKON_HOME=~/.envs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source ~/.local/bin/virtualenvwrapper.sh
我已经做了以下事情:
sudo apt install python3-pip
sudo pip3 install virtualenv virtualenvwrapper
source ~/.bashrc
这对我很有帮助。
答案2
我认为您错过了说明中的一个重要提示:导出行需要在引用 virtualenvwrapper.sh 之前。您引用了 virtualenvwrapper.sh 两次。
答案3
确认提供的python路径
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
与您安装virtualenv和virtualenvwrapper的python路径相同。
要找到您的 python 路径,请在控制台中使用which python
或命令。which python3
还要验证终端中的python
或python3
命令是否触发所需版本的 python IDLE。
答案4
在 Ubuntu 20.04 上,focalwhich python
不会产生任何结果,而which python3
会。然而/usr/local/bin/virtualenvwrapper.sh
依赖于which python
:
# Locate the global Python where virtualenvwrapper is installed.
if [ "${VIRTUALENVWRAPPER_PYTHON:-}" = "" ]
then
VIRTUALENVWRAPPER_PYTHON="$(command \which python)"
fi
因此,您可以使用 编辑后一个文件,并在您的主页顶部sudo
更改which python
为which python3
或添加export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
(或 显示的任何值) 。which python3
.bashrc file
然后安装virtualenvwrapper
(针对当前用户),运行:
sudo apt-get install python3-pip
pip install virtualenvwrapper
创建一个新的终端或注销/重新登录以确保消息已消失。