说明:本文主要是使用pycharm(社区版)对python项目进行虚拟环境的创建及管理。

1、先解释什么是虚拟环境:

当我们安装好一个python环境时(比如在python官网搭建的基础环境或者搭建的anconada环境),默认都是一个全局的环境(base环境,该环境会使用一个base的python解释器以及使用pip工具等,同时安装的一些依赖都是全局的依赖,如:在anconada3\Lib\site-packages目录下放的全局环境下安装的第三方依赖包。但是,在使用或开发python项目时,可能会遇到Python版本或第三方库的问题。当使用或开发多个项目,有的项目可能会使用不同版本的Python或是依赖不同的第三方库时,这时候如果还在全局环境(base环境)下进行安装或配置的话,可能会造成环境冲突。

这时候就需要用到虚拟环境,虚拟环境实质就是在本地创建一个独立的Python环境,这个环境拥有自己的独立的Python解释器和包管理器,不与系统环境和其他虚拟环境产生干扰。可以很好地避免Python版本和第三方库的冲突,实现项目之间的隔离

我们常用的管理虚拟环境的方式两个:一是如果安装了anconada环境就可以使用conda进行创建虚拟环境及管理相关依赖。二是使用Pycharm创建虚拟环境。

二者本质没有太大区别,只是可能与项目使用场景不同。pycharm的虚拟环境设置的话就是如果你是单纯一个项目,其实虚拟与否问题不大,但是你多个项目的话,可以选择一个base解释器做虚拟环境,防止不同项目冲突,这是好习惯。而如果你考虑到有一些项目是共通的但又怕出错,可以选择conda新建虚拟环境再对所有项目可用,这样就可以创建一个新的以base解释器的共享环境而不用担心影响原来的base。平时常在conda下创建的一个虚拟环境,可以在pycharm下的一个或多个项目共同使用。

若不清楚安装anconada环境和使用conda管理虚拟环境,以及conda创建了虚拟环境如何在pycharm项目中进行引用,见博客:

Windows下安装Anaconda及基础使用并添加到pycharm环境中_The black panther的博客-CSDN博客

二、演示使用pycharm在不同情况下(三种情况)创建或使用虚拟环境

1、Pycharm 创建新项目,并创建虚拟环境

1.1创建虚拟环境,:

File >> New Project>> New environment using Virtualenv(如下图)

 在这里创建一个新的项目demo1并在此项目创建一个虚拟环境。

创建好后会自动多一个venv文件夹,如下图:

venv内含文件含义:

lib 文件夹下 site-package:包含使用 pip 安装的依赖项(如request、flask等)。

scripts文件夹:它包含激活文件(activate)、退出激活文件(deactivate)、pip.exe、python.exe等。

pyvenv.cfg:可以通过该文件改变虚拟环境所指向的 PATH(如果创建虚拟环境后,想要手动更改虚拟环境指向真实python环境,也可以通过该文件修改

1.2、虚拟环境装依赖包

方法一:PyCharm>file> setting>Project :项目名称>Python Interpreter > 点击+,添加依赖包

 方法二:pycharm终端进行安装依赖。我们平时可能会对项目做一些调试类的操作,比如单独运行某个文件 pyhton3 main.py等操作之类的,需要在终端里操作一些。

点击pycharm下方Terminal ,就可以使用pip命令进行安装依赖包:

可以看到 项目下的ven文件夹下有刚才安装的第三方依赖包:

这里需要注意的是,终端的路径前面一定要有(venv)开头,表示当前终端使用的是本项目的虚拟环境,如果没有,表示使用的是全局环境。

补充:假如有同学明明项目是创建了虚拟环境仍然没有(venv)开头,可以做以下设置:

执行:pycharm>file>setting >tool>Terminal下的的Shell path设置为cmd.exe,如下:

并重启pycharm,再打开终端就可以了。

2、Pycharm已有项目,选择其他虚拟环境

若已经创建了一个项目,想要应用其他项目的虚拟环境。执行以下操作:

PyCharm>Preferences> Project :项目名称>Python Interpreter >向下箭头>Show ALL

在这里就可以选择应用其他项目的虚拟环境了

 

 

3、已有项目,创建并使用一个新的虚拟环境

3.1.首先确保你的项目中没有该文件夹venv

如下:打开了一个新的项目但没有venv文件下

 3.2、对已有项目创建一个新的虚拟环境,执行以下操作:Pycharm->Preferences->Python Interpreter ->add,如下图

 如下界面

 窗口左侧包含Virtualenv EnvironmentConda Environment SystemInterpreterPipenv Environment4个选项,其中Virtualenv Environment表示添加虚拟环境中的Python解释器,CondaEnvironment表示添加Conda环境中的Python解释器,System Interpreter表示添加本地的Python解释器。

点击ok就创建完成了。

3.3、装依赖包 

方法一:可以在pycahrm终端下通过pip 命令进行安装(类似上面步骤),补充如果,项目下有requirements.txt文档(项目的依赖清单),可以直接通过终端使用 pip install -r requirements.txt  进行安装。

方法二 :在pycharm上点击add,进行添加相关依赖,如下:

 

3.4 删除依赖包、指定版本、管理镜像源

删除依赖包:

指定依赖包的版本

管理镜像源

再补充一点:当项目开发完后,建议同学们使用 pip freeze>requirements.txt 命令将项目的库依赖导出,作为项目的一部分。养成良好的编程习惯。

总结:要学会命令行(终端)和pycharm图像界面两种不同的操作方式进行创建虚拟环境以及管理依赖包等操作。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐