conda、pip同时安装包引起混乱问题剖析

一句话总结

安装版本不一致时会有两个.dist-info文件夹(举例:scapy-2.6.1.dist-info和scapy-2.4.3.dist-info),conda list和pip list依靠这两个文件夹进行包的识别(疑似pip list识别老版本,conda list识别新版本),而包实际代码会被新安装的覆盖掉,致使list中版本和实际使用版本可能会不一致。

下面进行实验:

先用pip安装,后用conda安装

pip install scapy -i https://pypi.tuna.tsinghua.edu.cn/simple

  • 可以看到出现两个文件夹,源码为2.6.1版本,.dist-info为2.6.1,同时conda list 和 pip list 都没有问题。

conda install scapy

再次用conda安装scapy后,源码版本被覆盖,conda list显示2.6.1,pip list 显示2.4.3,发生错误。

先用conda安装,后用pip安装

省流:conda安装后没问题,再用pip安装时由于pip检测到有.dist-info文件夹了,会提示这个包已安装。

最后,查看一下scapy包的位置

可以看到conda安装的包会在pkgs目录下保存一份,以便其他环境安装时使用。

2024.11.24

相关推荐
wgzrmlrm7415 分钟前
SQL实现按用户偏好进行分组汇总_自定义聚合规则
jvm·数据库·python
7年前端辞职转AI21 分钟前
Python 变量
python·编程语言
7年前端辞职转AI22 分钟前
Python 数据类型
python·编程语言
冰块的旅行23 分钟前
python环境导出
python
顺顺 尼29 分钟前
进程(从操作系统的状态到linux的进程状态一步到位)
linux·服务器
曲幽33 分钟前
我用fastapi-scaff搭了个项目,两天工期缩到两小时,老板以为我开挂了
python·api·fastapi·web·celery·cli·db·alembic·fastapi-scaff
半点闲35 分钟前
入门 SQLAlchemy 教程:从 0 到 1 创建数据库
数据库·python·sqlite·sqlalchemy
好家伙VCC39 分钟前
# 发散创新:基于事件驱动架构的实时日志监控系统设计与实现在现代分布式系统中,**事件驱动编程模型**正
java·python·架构
测试199841 分钟前
postman接口测试详解
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman