【Anaconda3】如何清空重置conda的base环境

很多Python/机器学习初学者可能刚开始使用conda时会犯这个错误,那就是直接在base环境下面执行conda installpip install
这样会导致在错误使用较长时间后,base环境下会堆积大量包,
这也体现了conda install的弊端,包装多了分析相互解决屎山依赖的时候就会花费巨量时间。
笔者就是在用了几年后,发现以前的tensorflow/torch全装在了base环境下,想重新装一个包搁那Solving environment: \ 半个小时,查了半天中文互联网没找到解决方案,在外网看到方案,遂搬运一下。
原贴 How to reset anaconda root environment

conda list --revisions #查看历史版本

使用

conda install --rev 1

恢复到古早版本(或者 rev 0)


所以正确使用conda的方法应该是,使用conda管理虚拟环境

conda create -n myenv python=3.9

按需使用conda安装tensorflow/torch之类依赖麻烦的包
conda安装不上的一律用pip安装
缺少某个具体特定包的时候一律使用pip安装

conda install 以及pip install(在激活conda环境中使用的pip) package 都可以在 current_env/lib/site-packages 找到

conda有严格的检查机制,它会保证你当前装的package安装好之后能work,但是,它只检查用conda安装过的package。

例如,你新安装的package会依赖numpy ,不过你已经安装numpy(1.19.2),但是用pip安装的,不好意思,它会认为你没安装,然后用conda再安装一个依赖版本的numpy(1.18.5)。这个时候,两个numpy可能就打架了。并且你pip list与conda list显示的numpy版本可能不一致,结果不知道最后运行程序的时候调用了哪个版本的numpy。

这个时候,uninstall可能也卸载不干净,卸了一个还有一个,最后还可能一直list有却是一个空壳。这个时候,只能找到anaconda的lib/site-packages/numpy, 手动删掉它!

pip安装时既检查conda安装的package,也检查pip安装的package。不过,它只负责要什么装什么,不负责能不能把装的一堆packages打通,可能装好不work 😦。

另外conda clean --all命令可以帮助你清理掉一些无用的文件,包括缓存包、索引缓存、旧的日志文件和未使用的环境等,从而恢复 conda 环境的一部分“新状态”,建议多多使用。

参考文章:
pip install 和conda install有什么区别吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值