为什么要使用虚拟环境
a、隔离项目之间的第三方包依赖,如A项目依赖django1.2.5,B项目依赖django1.3。
b、为部署应用提供方便,把开发环境的虚拟环境打包到生产环境即可,不需要在服务器上再折腾一翻
注意:如果装的有不同的python版本直接按第九步操作
1、安装 virtualenv
菜单键+r打开cmd命令行输入
输入 :pip install virtualenv 回车
显示已经安装
2、安装virtualenvwrapper-win 可以快速启动virtualenv
菜单键+r打开cmd命令行输入
输入 :pip installvirtualenvwrapper-win
3、新建django虚拟环境项目
选择要建项目的位置,例如我的位置是 d:\Workspace
4、拷贝你电脑现有的python包到这个虚拟环境中,可以不用再在这个环境安装重复的包
a、--system-site-packages拷贝包命令、Weather_demo_venv自己起的虚拟环境名称
d:\Workspace>virtualenv --system-site-packages Weather_demo_venv
b、如果不需要拷贝包,Weather_demo_venv(自己的虚拟环境名称)
直接 :d:\Workspace>mkvirtualenv Weather_demo_venv
5、安装django框架在虚拟环境中
先找到 d:\Workspace>Weather_demo_venv\Scripts\activate 回车
输入要安装的django版本,我用的是python2.7,需要安装django-1.8.0版本的,应该是2.0以下的都可以,不要太高版本
会出现不匹配问题,有异常。
6、看一下django安装成功没有
7、在pycharm中创建django项目
选择自己建的虚拟环境下的目录python位置
d:\Workspace>Weather_demo_venv\Scripts\python.exe
8、虚拟项目创建完成
9、使用virtualenv分离python不同版本
a、安装python27、python35
本地安装的两个python版本2.7和3.5,安装不同版本是时会出现安装路径冲突问题
在安装时一个选择自动配置路径,在这个位置选择自动配置pip和python路径,如果不选择的话,
直接一路next即可,然后手动配置路径即可。
手动在系统环境变量内的path下加入:
pip和python的路径:D:\Python35\Scripts\;D:\Python35\;D:\Python27\Scripts\;D:\Python27\;
(1)修改python名
进入python27的安装目录把python.exe改为python2.exe或者自己喜欢的其他容易记住的名字
进入python35的安装目录把python.exe改为python3.exe或者自己喜欢的其他容易记住的名字
(2)修改pip
进入D:\Python27\Scripts发现下面有pip.exe、pip2.7.exe、pip2.exe
进入D:\Python35\Scripts发现下面有pip.exe、pip3.5.exe、pip3.exe
那么就不需要改名字了,直接把两个pip.exe删除即可,目的是再使用pip时避免重名导致不能全盘调用
(3)可能出现的问题
1>在cmd控制台输入pip2 -V 或pip3 -V出现报错:
Fatal error in launcher: Unable to create process using '"'
百度很多解决办法:
法2:修改pip
进入D:\Python27\Scripts发现下面有pip.exe、pip2.7.exe、pip2.exe
进入D:\Python35\Scripts发现下面有pip.exe、pip3.5.exe、pip3.exe
2>升级可能出现以下pip已经是最新版本问题
3>目前没发现什么好的解决直接暴力解决:
进入D:\Python27\Lib\site-packages找到pip-9.0.1.dist-info
不同时间的名字可能不同,总之是当下最新的pip的安装文件,删除。同理python35也这样处理。
下载pip的压缩包:https://pypi.python.org/pypi/pip#downloads
接下来手动安装包:
1、解压pip包然后在解压后的pip包文件的根目录下按下shift建右击鼠标,
选择在此处打开命令窗口
输入:python3 setup.py install
同理输入:python2 setup.py install
2、pip2 -V 、pip3 -V 再次检测pip版本
总结:
虽然有点low的解决,但是问题还是解决了。
b、安装virtualenv
第九步之前的都是在一个python的环境下,开的虚拟环境和第九步的开辟虚拟环境,本质没什么区别。
现在有了python2(pip2)、python3(pip3)两个,那么作为python一个模块的virtualenv
就需要python2和python3分别安装了。
(1)Python2、python3安装vitualenv
(2)在D:\Python27\Scripts、D:\Python35\Scripts下与virtualenv有关的文件
例如:mkvirtualenv、rmvirtualenv、workon、virtualenv都改一下名字
改为:mkvirtualenv3、rmvirtualenv3、workon3、virtualenv3
可能python2内只有virtualenv,那只需改为viertualenv2即可
但是没有mkvirtualenv、rmvirtualenv、workon,没办法进行相应操作,可以选择把python35
内的mkvirtualenv、rmvirtualenv、workon复制过来改一下名字,
例如:mkvirtualenv2、rmvirtualenv2、workon2
(3)创建虚拟环境
选择需要把虚拟环境创建的位置,按下shift点击鼠标右键选择此处打开命令窗口
查看D:\Python\venv_space目录出现虚拟环境:venv27、venv35
c、操作虚拟环境venv27、venv35
virtualenv+--system-site-packages+文件名(自己起的虚拟环境名称) 创建虚拟环境同时拷贝本地的python包到虚拟环境中
mkvirtualenv+文件名字(自己起的虚拟环境名称) 创建一个干净的虚拟环境
rmvirtualenv+文件名字(已存在的虚拟环境名称) 删除已有的虚拟环境
workon+文件名字(已存在虚拟环境名称) 进入已有虚拟环境
activate:激活虚拟环境 D:\Python\venv_space\venv27\Scripts在此目录下按下shift建右击鼠标选择此处打开命令窗口输入activate激活venv27虚拟环境
deactivate:退出当前虚拟环境 同上输入deactivate退出
d、使用虚拟环境
在虚拟环境的中安装python依赖包,同样利用pip即可要看使用的环境的python及pip是什么名字
例如:venv使用的是的python2、pip2,在venv27激活环境下pip2 install xxx 即可安装依赖包或
python框架
在pycharm中做项目时就可以选择需要的虚拟环境运行即可,也可以在pycharm内创建虚拟环境