前提:
电脑中同时有python39(local文件夹下)和anaconda,且anaconda安装在中文路径下,python39的activate文件在lib文件夹中,且lib文件夹没有添加到环境变量中,在环境变量中把python39放在anaconda的前面,我电脑中有一个python38环境,在roaming文件夹中,不过很诡异,内容非常少,只有两个文件夹
而且python38无法单独运行,即使把它移到环境变量的最前面它也运行不了
(以及python39的解释器在roaming-~~-programs-python39下,不在local文件夹下,不过这个还没出什么问题)
一系列问题:
问题一:anaconda的很多指令用不了,据推测是因为安装在中文路径下(因为在cmd中优先python39所以是在prompt中运行的命令)
conda install package_ name
conda upgrade conda
都抛出了异常
解决办法:卸载重装,问题解决
但是因为使用不了conda install anaconda-clean指令,我还是只能用uninstall卸载
(但还有很诡异的一点,anaconda在控制面板和geek中都找不到,据推测是win11的问题,因为重装后这个问题也没有解决)
问题二:在python39环境下新建了虚拟环境,activate后进入了base环境,没错真的很诡异
分析:由前提python39的activate文件不在环境变量中,所以创建的虚拟环境也没有activate文件,于是在虚拟环境中的scripts文件夹中调用内部activate指令无法进入虚拟环境,于是转向调用外部指令,但是python39的这几条环境变量中没有,于是继续向下扫,扫到了anaconda的领域,于是调用anaconda的activate文件,进入activate的base环境
(有点绕哈哈)
解决办法:把python39的lib文件夹(即activate文件所处的文件夹)也添加到环境变量
问题三:把anaconda设为默认环境后(即把anaconda的环境变量提前),运行python有警告
而且进入的是python38环境,不知道是不是anaconda的base环境,还是我的roaming的python38文件夹,还是说这两个是同一个东西?
按道理来说我的anaconda环境中只有一个base环境,进base环境应该是不用激活的
解决办法 :
1.(其实并不能真的解决)
没有警告了,但下一次还是会警告
2.
卸载重装不要勾选添加到环境变量的选项(But why??,毕竟不自动添加不也要手动添加吗)
问题三解决了,python38环境也算是弃置了,但还是感觉很困惑,有知道的小伙伴欢迎在评论区指点一二
后来遇到的一些问题:
使用pip安装包时如下提示
发现原因:系统源已经换为国内源,同时还挂了TZ,二者冲突
解决方法:暂时断开TZ
但接下来又出现了这样的问题
看了网上的教程后尝试更新pip,更新失败
尝试这篇博客的方法没有效果
尝试先更新setuptool,虽然有报错但似乎成功了
再更新pip,忘记加源,报错(此处也很奇怪,明明已经换过系统源了)
加源,还是抛出异常
似乎成功了
。。。。。我裂开了
最终解决办法(屁都没解决):换了个环境,可以安装我要安装的包,得了,虚拟环境废了,给编译器换环境去了