刚开始用Pycharm的时候,选择project interpreter,add local的时候有virtual Enviroment,system interpreter,conda Enviroment,选项不知道什么意思,百度学习了后过了一段时间忘了,一个项目用的是以前的一个项目的virtual Enviroment一直导包出错,还卸了重新装了一边==,写下区别以后学习
system interpreter表示本地的解释器
而Virtual Environment---Python的虚拟环境可以使一个Python程序拥有独立的库library和解释器interpreter,而不用与其他Python程序共享统一个library和interpreter。虚拟环境的好处是避免了不同Python程序间的互相影响(共同使用global library 和 interpreter),例如程序A需要某个库的1.0版本,而程序B需要同样这个库的2.0版本,如果程序B执行则A就不能执行了。
一个是本地环境一个把环境打包隔离了
Virtual Environment是一款工具,Pycharm中集成了,用以创建独立的虚拟环境。Virtual Environment主要解决的库依赖和版本依赖、以及间接授权等问题。
virtualenv,是一款Python工具,用以创建独立的Python虚拟环境。在一个Python虚拟环境中,持有Python所必须的依赖库,形成Python的虚拟运行空间。
virtualenv的使用方法如下:
1.通过pip安装virtualenv的命令:
pip install virtualenv
2.创建虚拟环境my_venv的命令:
virtualenv my_venv
virtualenv会创建一个目录my_venv,其中包含:
- 所有Python的可执行文件,以使用Python项目所需的软件包;
- pip类库的副本,以在必要的时候用以安装其他软件包。
my_venv目录结构:
- lib/,包含虚拟环境中后续安装的软件包
- include/,包含支持Python的类库
- bin/,可执行文件
python,可执行python的命令文件
pip,辅助安装其他软件包的命令文件
setuptools
3.创建虚拟环境my_venv,指定要使用的Python版本,命令:
virtualenv -p /usr/bin/python2.7 my_venv
或者在~/.bashrc文件中设置环境变量VIRTUALENVWRAPPER_PYTHON=/usr/bin/python2.7
4.创建虚拟环境my_venv,使用已有的全局软件包,即虚拟环境中不包含全局软件包,命令:
virtualenv --no-site-packages my_venv
从virtualenv 1.7开始,默认不包含全局软件包;
全局软件包默认位于/usr/lib/python_version/site-packages
5.创建虚拟环境my_venv,继承全局软件包,即虚拟环境中包含全局软件包,命令:
virtualenv --system-site-packages my_venv
6.进入虚拟环境my_venv所在的目录,首先激活该运行环境:
source my_venv/bin/activate
成功激活虚拟环境,可以看到命令行提示符发生变化。这样,后续的操作都是针对当前的虚拟环境进行的,不会影响其他运行环境。
7.在激活的虚拟环境中,通过pip安装其他必要的软件包:
pip install other_package
8.最后,注销当前已经被激活的虚拟环境:
deactivate
9.删除虚拟环境,只要删除其目录即可:
rm -rf my_venv
10.为了保留虚拟环境中的安装配置,可以将其输出到备份文件中,命令如下:
pip freeze > requirements.txt
11.在需要的时候,可以将其还原到虚拟环境中,命令如下:
pip install -r requirements.txt