PyCharm中Make available to all projects选项详解与虚拟环境配置
本文深入解析PyCharm新建项目时“Make available to all projects”选项的实际含义,即安装至全局site-packages。通过对比命令行与IDE操作,阐述虚拟环境在解决依赖冲突、节省空间及隔离项目中的作用,并提供从创建、激活到批量导包的完整部署流程。
Python包管理的必要性
一、为什么要进行包管理?
Python生态中丰富的第三方库极大提升了开发效率,避免了大量重复代码的编写。例如,接口测试常用requests库,前端自动化测试依赖webdriver,移动端UI测试则使用airtest等,应用场景广泛。随着项目积累,本地安装的第三方包数量可能远超预期,可通过命令行执行pip list查看具体数量。在实际开发场景中,若需将本地完成的项目部署至公共服务器,常见的做法是先在本地生成依赖列表文件(如执行pip freeze >requirements.txt),随后在服务器上通过pip install -r requirements.txt安装依赖。尽管代码运行结果可能达到66分的水平,但若不考虑环境隔离,这种做法会导致问题:历史项目中存在大量当前项目无需的依赖包,导致实际安装的包数量(如100个)远超实际需求(如10个),造成时间和存储空间的严重浪费。此外,不同项目对同一库的版本要求可能不同(如A项目需django 1.8,B项目需django 2.1),此时每个应用都需要独立的Python运行环境。virtualenv正是为解决此类问题而设计,用于为特定应用创建隔离的Python运行环境。
综上,包管理要解决的痛点就是:
1、不必要的包的安装,浪费时间
2、项目之间的依赖包隔离
虚拟环境的创建与使用
二、怎么做
1、命令行 先安装虚拟环境模块
pip3 install virtualenv # 安装virtualenv
进入项目目录,创建python虚拟环境
cd haima_api
virtualenv --no-site-packages myvenv # myenv是虚拟环境名字,随便取
至此,haima_api项目的虚拟环境创建完成。参数--no-site-packages的作用是确保系统Python环境中已安装的所有第三方包不会被复制到新创建的虚拟环境中,从而实现真正的隔离。
激活虚拟环境
source myvenv/bin/activate
激活成功后,命令行提示符前会出现相应的标识,如下图所示。

此时,在命令行中通过pip install安装的包将仅存在于当前创建的虚拟环境中,与当前项目绑定,不受其他项目影响。
PyCharm中的虚拟环境配置
2、使用pycharm
在实际开发中,PyCharm是常用的IDE。新建项目时,只需选择对应的虚拟环境即可。

PyCharm使用虚拟环境创建项目
inherit global site-packages:若勾选此项,表示新建项目会将全局site-packages中的包复制一份到虚拟环境中。
Make available to all projects:若勾选此项,表示当在虚拟环境中安装包时,会将该包复制一份到全局site-packages中,使其对所有项目可用。
前文多次提及全局包与虚拟环境内包的概念,此处明确其存放位置:
全局包存放在Python安装目录下的\Lib\site-packages子目录中。
虚拟环境包安装在关联项目目录下的\${虚拟环境名}\Lib\site-packages子目录中。
项目部署时的批量导包
三、项目部署时批量导包
- 在当前虚拟环境下,通过pip freeze > requirements.txt(文件名可自定义)生成依赖列表。
- 在目标服务器上执行pip install -r requirements.txt即可完成安装。
综上所述,Python项目的包管理并不复杂。当同时开发多个项目时,合理的包管理是必不可少的基础工作。
到此这篇关于深入浅析pycharm中 Make available to all projects的含义的文章就介绍到这了,更多相关pycharm Make available to all projects内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









