Warning
conda本身各个环境之间是隔离的,但前些天遇到了破坏隔离性的情况。
miniforge
在安装时,选择了All User
,此时,miniforge
的安装目录会是only read
状态。
安装完成后会自动创建base环境,此时的python版本为3.10。由于miniforge
的安装目录是only read
状态,所以,在base环境中用pip安装第三方库时,pip会自动加上--user
参数进行安装,把库安装到当前用户目录
userFolder\Python310\Lib\site-packages。
此时,坑已经挖好了。
再用conda create
创建一个全新的环境时,如果python版本还是3.10,那么新环境就会受到污染。会自动加载用户目录中同版本的python第三方库(实际是base环境中产生的)。
可以在新环境中用 python -m site
查看 sys.path
是否包含上边的用户目录。
如果新建环境的python版本不同,比如3.11,不会收到影响。
没什么必要的话,安装miniforge等conda环境时,还是Just For Me
吧。