python中蛋疼的環境配置

最近幾天一直在做一個基於django的網站,正準備安裝xadmin來替代admin,這裏就用到了虛擬環境,我在虛擬環境中安裝了python3.6(Mac系統自帶有python2.7),在runserver的時候一直報錯。一怒之下,我卸載了virtualenv、mysqlclient、django、python3.6,然後全部重新安裝,下面記錄一下如何是安裝成功的。

1. 安裝python 3.6

首先,卸載mac上原有的python 3.6 ,因爲之前安裝過python3.5和3.6兩個版本,所以先卸載,在terminal中操作如下:
刪除Python 3.6 framework:

sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.6

刪除Python 3.6 應用目錄:

sudo rm -rf “/Applications/Python 3.6”

刪除/usr/local/bin 目錄下指向的Python3.6的連接:

cd /usr/local/bin/ 
ls -l /usr/local/bin | grep ‘../Library/Frameworks/Python.framework/Versions/3.6’ | awk ‘{print $9}’ | tr -d @ | xargs rm

刪除系統中環境變量的配置:

vim .bash_profile
刪除環境變量.png

將紅框中的內容刪除即可,至此mac上python3.6的所有殘餘全部刪除;接下來可以安裝python3.6了。
python官網 下下載python3.6的文件,下載後雙擊安裝即可。然後檢查安裝是否成功:

python安裝成功.png

2. 安裝django

按照之前的安裝步驟,我在terminal中執行如下命令

pip install django

很快,django2.0版本安裝成功,我迫不及待滴想運行一下項目:

python manage.py runserver

OK,毫無意外,程序運行成功。但是,但是我的mac上安裝了兩個python3.6,我想在3.6環境下運行一下程序,如是:

python3 manage.py runserver

然而瞬間傻眼了,報了一堆錯誤:


python3出錯.png

同樣的代碼,在python2.7上運行成功,但是在python3.6上報錯,原因何在?我再次打開.bash_profile發現django的環境變量配置如下

# Setting PATH for django(python2.7)
export PYTHONPATH="/usr/local/lib/python2.7/dist-packages/django"

所以,我以爲就是因爲django只配置在2.7下,故在3.6下無法運行。如是我先卸載了django。
如果要在3.6下運行程序怎麼辦?我查了很長時間,終於找到在3.6下安裝django的方法:

sudo python3 -m pip install django

注意:這條命令與之前命令的區別
很快,django2.0安裝成功,再次運行程序即可成功:

python3 manage.py runserver

此時,我想重新創建一個項目,檢查一下python3下面的環境配置

django-admin startproject test2

很不幸,又報錯了

MacBook-Pro-2:python-works yucanghai$ django-admin startproject icoachu_website
-bash: /usr/local/bin/django-admin: No such file or directory

此時特別需要說明的是:

  1. Django2.0 後創建項目需要用django-admin.py
  2. Django2.0之前創建項目需要用django-admin
  3. 如果安裝了兩個版本,這兩條命令都可以用

3. 安裝虛擬環境virtualenv

安裝virtualenv

pip3 install virtualenv
安裝成功.png

然後在本地創建一個虛擬環境的文件夾

virtualenv python_envs
MacBook-Pro-2:icoachu_website yucanghai$ cd python_envs/
MacBook-Pro-2:python_envs yucanghai $ ls
bin         include         lib         pip-selfcheck.json
MacBook-Pro-2:python_envs yucanghai $ cd bin/
MacBook-Pro-2:bin yucanghai $ ls
activate        easy_install        pip3.6          python3.6
activate.csh        easy_install-3.6    python          wheel
activate.fish       pip         python-config
activate_this.py    pip3            python3
MacBook-Pro-2:bin yucanghai $ source activate
(python_envs) MacBook-Pro-2:bin yucanghai $ deactivate

其中,source activate爲激活虛擬環境,deactivate爲退出虛擬環境。

Virtaulenvwrapper是virtualenv的擴展包,可以更方便地新增,刪除,複製,切換虛擬環境。

運行下面命令就安裝成功了,默認安裝在 /usr/local/bin下面:

sudo pip3 install virtualenvwrapper

接下來創建一個文件夾,用來存放所有的虛擬環境:
$ mkdir ~/workspaces
$ cd ~/workspaces
但是在使用virtualenvwrapper之前,要運行virtualenvwrapper.sh文件,需要設置環境變量,如下圖。


環境變量.png

至此,蛋疼的環境安裝成功。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章