解决 conda新建虚拟环境只有一个conda-meta文件&conda新建虚拟环境不干净

像以前一样通过conda 新建虚拟环境时发现环境一团糟,首先新建虚拟环境

conda create -n newenv

这时候activate newenv,通过pip list,会发现有很多很多的包,都是我在其他环境用到的。但诡异的是,来到anaconda下env的目录,却发现newenv下只有一个conda-meta文件。这到底是为啥?

newenv下只有一个conda-meta文件

第一个问题,newenv下只有一个conda-meta文件,通过查找发现大家有一样的问题,并通过这个帖子找到了解决办法。
conda创建虚拟环境后文件夹中只有conda-meta文件夹
这个文字链接经常失效,附上网址http://t.csdnimg.cn/4JBNX

解决办法就是新建环境时加上python版本

conda create -n newenv python=3.8

这个问题解决之后,可以在newenv 下的lib/site-packages发现新装的包,但pip list仍然有巨多的以前安装过的包,这也就是conda 虚拟环境混乱的问题,通过查找,发现了以下相似问题的帖子
使用Conda创建空的虚拟环境,pip list有很多其他的包
地址:http://t.csdnimg.cn/1Njl1
解决Conda 创建 Python 虚拟环境不纯净的问题
地址:http://t.csdnimg.cn/vdotR
由pip默认安装位置引起的bug
地址:http://t.csdnimg.cn/xITqW
pip总是定位到全局Python的pip路径中(无法定位到虚拟环境的pip)
地址:http://t.csdnimg.cn/TMwHb
很可惜,这些方法我都尝试了,还是没有解决我的问题,于是我通过

pip show packagename

查看pip list中那些包的位置,发现大部分包都在\anaconda3\lib\site-packages这个目录,也就是说,我新建的虚拟环境中会有\anaconda3\lib\site-packages所有的包,这样一来虚拟环境还有个啥用?环境都隔离不了?要知道在 Python 的虚拟环境中,通常不会直接引用主环境的 site-packages 目录。虚拟环境的设计初衷就是为了提供一个隔离的环境,其中只包含特定的库和版本,不受主环境中安装的库的影响。当激活虚拟环境时,Python 解释器会修改其内部的路径设置,以优先使用虚拟环境中的库。那么,为什么新建的虚拟环境看起来包含了主环境的所有包呢?可能的原因是什么?
经过一些猜测,有可能是环境变量的干扰: 如果系统的环境变量(如 PYTHONPATH)被设置为指向主环境的 site-packages 目录,这可能会导致在虚拟环境中也能访问到主环境中的包。
在windows系统中“我的电脑”,选择“属性”。点击“高级系统设置”。在系统属性窗口中,选择“环境变量”。在环境变量中,查找名为 PYTHONPATH 的变量。发现这个值正是\anaconda3\lib\site-packages,将这个路径删除之后,pip list终于干净了。
在这里插入图片描述
但我记得这个PYTHONPATH是在安装anaconda的时候设置的,为什么会影响到虚拟环境之间的包?原因还是没搞明白。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/417718.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

福昕软件的使用

快捷操作 快捷键 快捷键功能备注Ctrl P打印 Ctrl W关闭 Ctrl B书签 鼠标放菜单栏,单击右键即可导入/导出 自定义菜单栏文件-->偏好设置-->文档 1、多实例:单击PDF后均重新打开一个新界面。

【51单片机Keil+Proteus8.9+ADC0804】ADC实验 模拟转数字实验

一、实验名称 ADC实验 模拟转数字实验 二、设计思路 电路设计 1.选用AT89C51单片机作为电路核心单元,外接8位单通道AD转换器ADC0804芯片和LM016L显示器以及滑动变阻器等其它常用元器件构成电路。 2.将ADC0804芯片的控制引脚RD,WR,INTR接到AT89C51芯片对应引脚&…

SpringCloud-高级篇(十四)

缓存的作用是其实就是为了减轻对数据库的压力,缩短服务响应的时间,从而提高整个服务的并发能力,Redis单节点并发其实已经很高了,但是它依然有自己的上限,随着互联网的发展,用户低量越来越大,想淘…

51单片机原理及应用张毅刚版课后习题以及答案

AT89S51单片机内部集成了哪些外围功能部件 ①8位微处理器CPU ②数据存储器 128B RAM ③程序存储器 ④4个8位可编程并行I/O口 ⑤1个全双工的异步串行口 ⑥2个可编程的16位定时器/计数器 ⑦1个看门狗定时器WDT ⑧中断系统具有五个中断源 五个中断向量 ⑨特殊功能寄存器SFR 26个…

vulnhub靶机BlueSky

下载地址:BlueSky: 1 ~ VulnHub 主机发现 目标177 端口扫描 服务扫描 漏洞扫描 看web就不用我多说了吧 默认页面,爆破吧 这个也没有扫出来 有manger/html但是没有任何返回值 应该是限制本地访问或者禁掉了 网上直接用struts2-showcase这个洞了 cve-20…

智能AI写作到底怎么样?这几款AI写作非常好用

近年来,人工智能(AI)技术的快速发展已经渗透到各个领域,包括写作领域。AI写作软件通过模仿指定作家的风格和语言,能够生成高质量的文章。这种技术的出现引发了广泛的讨论和争议。本文将探讨AI写作的优点,并…

flutter获取地理定位:geolocator依赖详细用法

本文使用geolocator插件实现app物理定位功能。 该插件的主要功能有: 获取最后已知位置;获取设备当前位置;获取连续的位置更新;检查设备是否启用了定位服务;计算两个地理坐标之间的距离(米)&am…

air001研究笔记.基于arduino快速开发简单项目

一、air001芯片简介 air001是厂商合宙推出的一款tssop封装的mcu芯片。支持swd与串口烧录,多面向简单的功能简单类别的电子产品,因为官方文档齐全上手简易,所以也特别适合非专业爱好者乃至于幼儿编程。芯片内置资源:AIR001芯片数据…

家教上门助教小程序源码,家教小程序,家教系统,家教app,家教源码

家教上门助教小程序源码,家教小程序,家教系统,家教app,家教源码 推荐使用宝塔面板Linux NginxPHPMYSQL 支持家教老师筛选 支持家教人员入住 支持购买课程 支持教学资讯 支持订单课程

项目管理十大知识领域之项目沟通管理

一、项目沟通管理概述 项目沟通管理是项目管理中的重要组成部分,它涉及到对项目信息的收集、处理、存档和传递。一个成功的项目沟通管理可以确保团队成员、利益相关者以及其他相关方之间的信息交流畅通无阻,从而推动项目顺利进行。沟通管理涉及的内容不…

【微信小程序开发】环境介绍和基本使用

文章目录 前言1. 项目的基本组成结构1.1 JSON 配置文件的作用1.2 如何新建小程序页面1.3 修改项目首页1.4 WXML 模板1.5 WXSS 样式1.6 JS 逻辑交互 2. 宿主环境2.1 什么是宿主环境2.2 通信模型2.3 运行机制2.4 组件2.4.1 view 组件的基本使用:2.4.2 scroll-view 组件…

docker 使用 vcs/2018 Verdi等 eda 软件

好不容易在ubuntu 安装好了eda软件,转眼就发现了自己的无知。 有博主几年前就搞定了docker上的EDA工具。而且更全,更简单。只恨自己太无知啊。 Synopsys EDA Tools docker image - EDA资源使用讨论 - EETOP 创芯网论坛 (原名:电子顶级开发网…