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
python中蛋疼的环境配置_第1张图片
删除环境变量.png

将红框中的内容删除即可,至此mac上python3.6的所有残余全部删除;接下来可以安装python3.6了。
在 python官网 下下载python3.6的文件,下载后双击安装即可。然后检查安装是否成功:

python中蛋疼的环境配置_第2张图片
python安装成功.png

2. 安装django

按照之前的安装步骤,我在terminal中执行如下命令

pip install django

很快,django2.0版本安装成功,我迫不及待滴想运行一下项目:

python manage.py runserver

OK,毫无意外,程序运行成功。但是,但是我的mac上安装了两个python3.6,我想在3.6环境下运行一下程序,如是:

python3 manage.py runserver

然而瞬间傻眼了,报了一堆错误:


python中蛋疼的环境配置_第3张图片
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文件,需要设置环境变量,如下图。


python中蛋疼的环境配置_第4张图片
环境变量.png

至此,蛋疼的环境安装成功。

你可能感兴趣的:(python中蛋疼的环境配置)