分享

一篇文章看懂Pycharm中的Virtualenv Environment、Conda Environment、System interpreter的不同

 和相品 2020-02-14

安装好Pycharm后,需要配置python编译环境,选择project interpreter,add local的时候有virtual Enviroment,conda Enviroment, system interpreter。

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多