python 虚拟环境继承系统 packages

python 安装并配置虚拟环境 安装配置python3.7,并在虚拟环境下安装xgboost库 阅读详情
AI摘要

本文介绍了如何在Pycharm创建新项目时,通过勾选`inheritglobalsite-packages`选项,让项目继承系统已安装的库,从而减少虚拟环境的磁盘占用。这种方法适用于系统库中有项目所需包的情况,但需注意不要将所有包安装在系统环境中,保持虚拟环境的独立性。


Date: 2023-08-25


Pycharm 新建项目时勾选inherit global site-packages 避免重复安装 packages,节省磁盘体积

使用 Pycharm 创建一个新的工程时默认会创建一个虚拟环境。虚拟环境的好处我们这里就不再多说了。
在创建了虚拟环境之后,我们安装的 packages 都会存放在 venv/Lib/site-packages/ 目录下,如果你使用了较多或者较大的packages 的话,这个venv 目录将会占用不少空间。
比如我之前有个项目的 requirements.txt 文件里的内容如下

opencv-python==4.8.0.76
opencv-contrib-python==4.8.0.76
opencv-contrib-python-headless==4.8.0.76
numpy~=1.21.3
scipy==1.7.3

合计占用了 406M 空间。试想一下,如果你有多个项目的话,累计占用的空间是以G 计的。
其实在通过Pycharm 创建虚拟环境时多勾选一个 inherit global site-packages 选项就可以帮我们节省空间,这个选项的意义是让我们当前的项目可以使用系统环境下安装的packages。

在重新创建了勾选给 的venv 后,虚拟环境占用14M,大大减小体积,当然前提是你系统库里面有安装当前项目所需要的packages。

使用命令创建虚拟环境并给予系统packages 使用权限

只需在创建虚拟环境时加上 --system-site-packages 选项:

$  python -m venv --system-site-packages venv3

另外虚拟环境目录下会有个 pyvenv.cfg 文件,其中 include-system-site-packages = true 就代表是否可以使用系统packages,也就是和 --system-site-packages 对应的配置。

注意:不建议将所有的packages 都安装在系统环境下,这样虚拟环境就失去了意义。

Pycharm配置Python虚拟环境与在虚拟环境安装PYQT5 1.新建工程: 2.New environment using:选择Virtualenv 3.注意不要勾选Inherit global site-packages 和 Make available to all projects 4.点击最下方Create按钮后,Python项目与虚拟环境创建完成,项目下有venv目录 5.点击Pycharm下方Terminal((venv代表项目Python虚拟环境)),命令在虚拟环境下安装PyQt5包:pip install PyQt5 6.虚.. 阅读详情

相关推荐

ROS2+PYTHON VENV虚拟环境配置方法

ROS2+PYTHON VENV配置方法本篇针对的是python。

下雨夏云的博客 555

Python虚拟环境瘦身术:如何通过系统包继承优化磁盘空间与开发效率

本文详细介绍了如何通过Python虚拟环境的系统包继承(--system-site-packages)优化磁盘空间与开发效率。通过混合隔离策略,开发者可以大幅减少重复安装基础包(如NumPy、OpenCV)的空间占用,同时保持项目依赖的隔离性。文章提供了从命令行到PyCharm的完整实施方案,帮助开发者实现高效的环境管理。

weixin_28835551的博客 268

PyCharm 2024.2 项目解释器配置:3种方法复用全局库,避免重复 pip install

本文详细介绍了PyCharm 2024.2中配置项目解释器的3种高效方法,帮助开发者复用全局第三方库,避免重复pip install。通过继承全局site-packages、直接使用系统解释器或创建共享虚拟环境,显著提升开发效率,特别适合需要频繁切换项目的Python开发者。

weixin_26804345的博客 347

pycharm 新建项目时要勾选inherit global site-packages!pycharm 新建项目时要勾选inherit global site-packages

pycharm 新建项目时要勾选inherit global site-packages

bashine的博客 5131

03 pycharm的安装和使用

python的开发有很多种方式:一种是在python的解析器里面,单行执行 另一种就是使用IDE,第三方的开发工具,比如pycharm

水滴爬呀爬 770

igh ethercat 实时性测试

组备注std(us)max(us)a无锁核,无rt补丁8.38108b锁核+FIFO调度+内存锁定,无rt补丁0.9216c锁核+FIFO调度+内存锁定,+rt补丁0.9922可以看到 a组 使用ethercat不做其他优化,周期抖动非常大,且max能达到 100 多 us;通过 锁核+FIFO调度+内存锁定 进行优化,可以看到 抖动明显降低,且max 为 20 us 左右;

qq_43353632的博客 2309

pycharm新建项目

创建项目,由于没有勾选inherit global site-packages ,可以看到新建项目的解释器没有引用系统解释器的库,如果勾选将出现两个site-packages,代表引用了系统的解释器环境。进入setting界面,点击add,添加Python解释器,选择existing environment,选择自己想要的解释器即可。inherit global site-packages 是指虚拟环境的安装包将继承系统解释器内安装的包。base interpreter是指系统的Python解释器。

weixin_60612673的博客 4115

保姆级教程:用Python spatialdata框架搞定10x Xenium空间转录组数据(从下机到高级分析)

本教程详细介绍了如何使用Python spatialdata框架处理10x Xenium空间转录组数据,从数据获取到高级分析的全流程。涵盖环境配置、数据读取、质量控制、降维聚类、细胞注释及空间共定位分析等关键步骤,特别适合生物信息学研究者快速掌握Xenium数据分析技术。

weixin_30300225的博客 482

Pycharm项目工程中如何继承系统Python的site-packages

Pycharm项目工程中继承系统Python的site-packages的方法

AeonSue的博客 1193

基于轻量级神经网络MobileNet V2的水果识别种类算法研究

本文阐述了一种基于轻量级卷积神经网络MobileNet V2的水果分类与识别算法研究。为了最大限度地促进机械收获,需要一个检测系统,它可以让我们识别不同类别的水果。一个相对未开发的想法是使用深度学习和人工智能算法,不仅可以检测水果的种类,还可以检测水果是否成熟。这可以证明是有利可图的,因为它可以提供作物生长状况以及成熟和未成熟果实的个体数量,以及决定是否是收获时间的有用信息。第一步对数据进行了预处理,数据预处理技术在众多的深度学习计算中起到了重要作用。

qq_43556680的博客 1640

【Pytorch】DCGAN实战(三):二次元动漫头像生成

文章目录1.实现效果2.环境配置2.1Python2.2Pytorch、CUDA2.3Python IDE3.具体实现3.1数据预处理(data.py)(1)导入包(2)定义数据类3.2模型Generator,Discriminator,权重初始化(model.py)(1)导入包(2)Generator(3)Discriminator(4)权重初始化3.3网络训练(net.py)(1)导入包(2)创建类3.4 主函数(main.py)(1)导入文件(2)定义超参数(3)实例化(4)进行训练4.训练过程4.1

qq_44031210的博客 4916

一分钟搞懂 `--system-site-packages`:在虚拟环境中复用系统大包

在 Docker 容器或深度学习服务器中,全局环境往往已经预装好了动辄数 GB 的 PyTorch、TensorRT 或 CUDA 绑定包。如果直接新建一个干净的虚拟环境,就必须重新下载安装这些巨型依赖;但如果直接在全局环境里,又容易遇到依赖冲突或系统包管理器报错。

先说一下,就简单地写点儿氵文,不是博客,只是我的笔记本/工具书 189

【BigWorld 游戏服务器引擎】Cell 架构设计介绍,及Java实现方案的探索

横向扩展(Scalability):通过动态增减CellApp和BaseApp的数量,可以轻松应对玩家人数的变化。世界可以做得非常大,只需增加更多的 Cell。负载分离(Load Separation):将不同性质的负载分离,避免了单一进程瓶颈。CPU 密集型的实时计算(CellApp)和 I/O 密集型的数据操作(BaseApp)互不影响。高效的视野管理(AOI):每个 Cell 只关心自己区域内和边界上的实体,大大降低了计算复杂度。容错性:某个CellApp。

代码时光 1205

【Hailo8L 树莓派5开发】如何在python虚拟环境中使用hailo库

然后在创建虚拟环境的过程中 需要增加一项可选项。这一步是为了继承系统中的python扩展库。这一步可能需要sudo权限。

minecraft_hcl的博客 140

浏览器缓存导致代码不更新?一招解决部署后用户仍看到旧页面的问题

方案效果适用场景文件名哈希永久解决前端工程化项目HTTP缓存头控制精准控制需服务器权限Meta标签部分生效临时补救方案最佳实践:入口HTML禁用缓存,静态资源使用哈希文件名 + 长期缓存,达到「秒级更新」+「高性能」的平衡!

江拥羡橙的博客 810

【Android性能优化】Android App 冻结与内存压缩:CachedAppOptimizer 源码级解析

本文基于 AOSP Android 16 源码,以 `CachedAppOptimizer` 为核心,深度解析 Android 对"后台缓存应用"的两大治理手段——**进程冻结(Freezer)**与**内存压缩(Compaction)**。文中完整还原冻结的 debounce 去抖动机制、`mEarliestFreezableTime` 的最早可冻结时刻算法、粘性冻结(Sticky Freeze)的语义,以及解冻时必须"先解 binder 再解进程"的顺序奥义。

weixin_44081096的博客 175

树莓派虚拟环境中Picamera2模块导入失败:libcamera路径隔离问题解析

本文解析树莓派虚拟环境中Picamera2模块导入失败问题,重点解决因libcamera路径隔离导致的ModuleNotFoundError。通过分析虚拟环境隔离机制,提供手动添加系统路径、创建.pth文件及使用--system-site-packages参数等解决方案,确保硬件相关库在虚拟环境中正常调用。

kotlin6android的博客 245

高数15种常见特殊曲线:星形线、心形线、摆线、对数螺线、双曲螺线、阿基米德螺线、伯努利双纽线、三叶玫瑰线、四叶玫瑰线、六叶玫瑰线、三次抛物线、半立方抛物线、箕舌线、蔓叶线、笛卡儿叶形线、概率曲线

4.1 对数螺线(等角螺线、生长螺线)三叶玫瑰线、四叶玫瑰线、六叶玫瑰线。​7.2 半立方抛物线(尼尔曲线)10.笛卡儿叶形线(茉莉花瓣曲线)常考选择题、填空题,大题也涉及。​4.2 双曲螺线(倒数螺线)11.阿基米德螺线(等速螺线)3.摆线(圆滚线、旋轮线)5.双纽线(伯努利双纽线)1.星形线(四尖瓣线)2.心形线(心脏线)..................

刘鑫磊 1万+

virtualenv

virtualenv 使用指南(翻译自官方文档)创建虚拟机 virtualenv ENV该命令将会创建一个 ENV 目录,该目录用于存放新创建的虚拟机。创建一个虚拟机会产生很多有用的效果: ENV/lib 和 ENV/include 目录将会被创建,该虚拟机的安装包将会存储在 ENV/lib/pythonx.x/site-packages/中; ENV/bin 目录会被创建用于存储该虚拟机特定的可

jeffor的博客 390

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Ubuntu下Python虚拟环境实战:破解PEP 668与apt冲突

Python虚拟环境是隔离项目依赖的基础机制,其核心原理在于复制解释器、重置sys.path并创建独立site-packages目录;技术价值在于避免包版本冲突、保障可重现性与系统安全;典型应用场景包括多项目开发、CI/CD流水线和生产部署。然而在Ubuntu等启用PEP 668规范的发行版中,系统级apt包管理与pip工具链存在主权冲突——系统Python环境通过pyproject.toml和INSTALLER文件声明受外部管控,导致venv创建的环境仍继承限制,引发PermissionError、卸载失

weixin_29587015的博客 272

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Jetson虚拟环境调用系统OpenCV与TensorRT的终极指南

在Python开发中,虚拟环境(Venv/Conda)通过隔离site-packages和动态链接库加载路径,为项目提供独立依赖管理。然而在NVIDIA Jetson平台上,这一机制却常常导致系统预装的加速组件“失联”——OpenCV退化为纯CPU版本,TensorRT无法导入,推理性能大幅缩水。其根源在于JetPack已经将CUDA、GStreamer等硬件加速能力深度集成进系统级OpenCV与TensorRT,而虚拟环境默认不继承这些系统库。理解动态链接库的搜索顺序和Python模块解析优先级,是解决这

weixin_29185493的博客 63

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

如何将python本地的第三方库配置到pycharm中

在pycharm中创建new project时,会出现如下页面 (使用本地配置好的解释器而不是创建新的虚拟环境) 1、选择 Previously configured interpreter 2、再点击右边的三小点,选择 system interpreter 3、再将路径选择为当地python解释器所在路径(一般会默认选择) 这样创建的 Project 就可以使用本地已安装好的第三方库 ...

mccree618的博客 1553

Ubuntu下Python虚拟环境PEP 668兼容指南

Python虚拟环境是隔离项目依赖的基础机制,其核心原理在于解释器克隆、路径重定向与包安装策略分离。随着PEP 668规范落地,Linux发行版(如Ubuntu 22.04+)强制标记系统Python为‘外部管理’,导致默认venv中pip仍受系统级权限限制。这一变化并非bug,而是CPython对系统稳定性与开发者自由的重新平衡,技术价值在于防止用户误改系统Python生态。典型应用场景包括高校实验部署、Docker容器化、CI/CD自动化及多版本Python共存管理。本文聚焦Ubuntu平台,深入解析E

weixin_30768881的博客 231

Ubuntu下Python虚拟环境失效真相:PEP 668机制深度解析

Python虚拟环境是隔离依赖的核心机制,其本质是通过复制解释器运行时结构构建独立site-packages路径;PEP 668作为Python包管理新规范,强制要求系统级Python(如Ubuntu apt安装版本)标记EXTERNALLY-MANAGED元数据文件,使pip进入只读模式;这一设计保障了系统稳定性,却导致venv模块在初始化时继承该限制,造成pip缺失、setuptools导入失败等典型故障;其技术价值在于厘清系统托管与用户可控的边界,适用于Ubuntu/Debian系开发、教学及CI/C

weixin_33326218的博客 129

isaac sim/isaac lab 5.0.0 中typing_extensions问题解决办法及过程

At:File “At:import sysprint(f"用的解释器是 ---------------------{sys.executable} -------------")print(f"当前模块搜索路径:{sys.path}")

acanab的博客 414

python 虚拟环境_Python虚拟环境安装与配置

不同工程,都有自己独有的依赖包,怎么才能实现环境的分割呢。Python提供的虚拟环境就可以解决这个问题,今天就说下virtualenv和pipenv两个工具的使用。virtualenv安装(windows)pip install virtualenvpip install virtualenvwrapper-win#虚拟环境管理包,virtualenv 的扩展工具。配置:创建一个虚拟环...

weixin_39556590的博客 92
上一篇: python 性能分析工具 - cProfile
下一篇: 镜头相关概念
十橙
博客等级 码龄24年 312粉丝 95原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值