簡體   English   中英

在MacOS上為Python 3.6初始化virtualenvwrapper

[英]Initializing virtualenvwrapper for Python 3.6 on MacOS

我想在Python 3.6中使用virtualenvwrapper,但是,我正在使用Mac,默認使用Python 2.7,我遇到了問題。 這是我到目前為止所做的。 使用以下命令,我找到了保存每個Python版本的位置:

>> which python 
>> /usr/bin/python

>> which python3
>> /Library/Frameworks/Python.framework/Versions/3.6/bin/python3

我使用以下方法成功安裝了virtualenv和virtualenvwrapper:

>> pip3 install virtualenv
>> pip3 install virtualenvwrapper

然后我搜索virtualenv和virtualenv包裝器的位置以確認它們的位置:

>> pip3 show virtualenv
>> Location: /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages

>> pip3 show virtualenvwrapper
>> Location: /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages

如果我轉到此site-packages目錄,則有以下內容:

virtualenvwrapper
    |--- __pycache__
    |--- hook_loader.py
    |--- project.py
    |--- user_scripts.py
virtualenvwrapper-4.8.2-py2.7-nspkg.pth
virtualenvwrapper-4.8.2.dist-info

根據virtualenvwrapper的文檔,我應該將以下內容添加到我的shell啟動文件中以確保初始化,將virtualenvwrapper的路徑更改為我機器上的一個路徑:

 export WORKON_HOME=~/Envs
$ mkdir -p $WORKON_HOME
$ source /usr/local/bin/virtualenvwrapper.sh

然后我搜索了virtualenvwrapper.sh實際所在的位置(由於某種原因,它不在virtualenvwrapper模塊的安裝位置):

>> which virtualenvwrapper.sh
>> /Library/Frameworks/Python.framework/Versions/3.6/bin/virtualenvwrapper.sh

我使用以下命令更改了我的.bashrc文件:

>> nano ~./bashrc

復制如下:

# script for virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/Devel
source /Library/Frameworks/Python.framework/Versions/3.6/bin/virtualenvwrapper.sh

然后我打開了一個新的終端並運行:

>> source `which virtualenvwrapper.sh`

哪個給了我:

  /usr/bin/python3: No such file or directory
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.

我不明白為什么virtualenvwrapper需要位於/ usr / bin / python3,而不是目錄。 因為它在bin中,所以我也不可能將它變成目錄。 另外,virtualenvwrapper.hook_loader不是virtualenvwrapper.sh的地方,我認為這可能會導致問題。

我也嘗試創建一個到/ usr / local / bin的符號鏈接,因為有人說它解決了他們的問題,但這並沒有解決我的問題:

sudo ln /Library/Frameworks/Python.framework/Versions/3.6/bin/virtualenvwrapper.sh /usr/local/bin/virtualenvwrapper.sh

另一個問題是,如果我想使用virtualenvwrapper for Python3,是否需要使用pip3安裝它。 例如, 這篇文章指出你只需要傳遞一個標志,但是,你也應該警惕在你的基礎Python安裝上安裝它。

export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.6/bin/python3

.bashrc並在終端中執行命令。 這為virtualenvwrapper設置了Python解釋器的路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM