spyder/conda安装包报错:conda info could not be constructed. KeyError: ‘pkgs_dirs‘_environment variables: conda info could not be con-程序员宅基地

技术标签: python  pip报错  # 灭错合集  conda  

打开conda,报错特征如下:

报错信息

在这里插入图片描述
打开powershell,输入conda info一通报错。

(base) PS C:\Users\Administrator> conda info

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\exceptions.py", line 1082, in __call__
        return func(*args, **kwargs)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\main.py", line 87, in _main
        exit_code = do_call(args, p)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\conda_argparse.py", line 84, in do_call
        return getattr(module, func_name)(args, parser)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\main_info.py", line 317, in execute
        info_dict = get_info_dict(args.system)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\main_info.py", line 163, in get_info_dict
        pkgs_dirs=context.pkgs_dirs,
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\base\context.py", line 530, in pkgs_dirs
        fixed_dirs += user_data_dir(APP_NAME, APP_NAME),
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\_vendor\appdirs.py", line 67, in user_data_dir
        path = os.path.join(_get_win_folder(const), appauthor, appname)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\_vendor\appdirs.py", line 284, in _get_win_folder_with_pywin32
        from win32com.shell import shellcon, shell
    ImportError: DLL load failed while importing shell: 找不到指定的程序。

`$ C:\ProgramData\anaconda3\Scripts\conda-script.py info`


An unexpected error has occurred. Conda has prepared the above report.

If submitted, this report will be used by core maintainers to improve
future releases of conda.
Would you like conda to send this report to the core maintainers?

[y/N]: n

No report sent. To permanently opt-out, use

    $ conda config --set report_errors false

安装任意包同样报错。。。。

(base) PS C:\Users\Administrator> conda install pybindll
Collecting package metadata (current_repodata.json): failed
WARNING conda.exceptions:print_unexpected_error_report(1216): KeyError('pkgs_dirs')
Traceback (most recent call last):
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\exceptions.py", line 1082, in __call__
    return func(*args, **kwargs)
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\main.py", line 87, in _main
    exit_code = do_call(args, p)
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\conda_argparse.py", line 84, in do_call
    return getattr(module, func_name)(args, parser)
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\main_install.py", line 20, in execute
    install(args, parser, 'install')
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\install.py", line 260, in install
    unlink_link_transaction = solver.solve_for_transaction(
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 152, in solve_for_transaction
    unlink_precs, link_precs = self.solve_for_diff(update_modifier, deps_modifier,
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 195, in solve_for_diff
    final_precs = self.solve_final_state(update_modifier, deps_modifier, prune, ignore_pinned,
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 300, in solve_final_state
    ssc = self._collect_all_metadata(ssc)
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\common\io.py", line 88, in decorated
    return f(*args, **kwds)
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 463, in _collect_all_metadata
    index, r = self._prepare(prepared_specs)
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 1058, in _prepare
    reduced_index = get_reduced_index(self.prefix, self.channels,
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\index.py", line 288, in get_reduced_index
    new_records = SubdirData.query_all(spec, channels=channels, subdirs=subdirs,
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\subdir_data.py", line 118, in query_all
    create_cache_dir()
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\subdir_data.py", line 876, in create_cache_dir
    cache_dir = join(PackageCacheData.first_writable().pkgs_dir, 'cache')
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\package_cache_data.py", line 151, in first_writable
    pkgs_dirs = context.pkgs_dirs
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\base\context.py", line 530, in pkgs_dirs
    fixed_dirs += user_data_dir(APP_NAME, APP_NAME),
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\_vendor\appdirs.py", line 67, in user_data_dir
    path = os.path.join(_get_win_folder(const), appauthor, appname)
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\_vendor\appdirs.py", line 284, in _get_win_folder_with_pywin32
    from win32com.shell import shellcon, shell
ImportError: DLL load failed while importing shell: 找不到指定的程序。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\exceptions.py", line 1214, in print_unexpected_error_report
    message_builder.append(get_main_info_str(error_report['conda_info']))
  File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\main_info.py", line 237, in get_main_info_str
    info_dict['_' + key] = ('\n' + 26 * ' ').join(info_dict[key])
KeyError: 'pkgs_dirs'

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\exceptions.py", line 1082, in __call__
        return func(*args, **kwargs)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\main.py", line 87, in _main
        exit_code = do_call(args, p)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\conda_argparse.py", line 84, in do_call
        return getattr(module, func_name)(args, parser)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\main_install.py", line 20, in execute
        install(args, parser, 'install')
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\cli\install.py", line 260, in install
        unlink_link_transaction = solver.solve_for_transaction(
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 152, in solve_for_transaction
        unlink_precs, link_precs = self.solve_for_diff(update_modifier, deps_modifier,
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 195, in solve_for_diff
        final_precs = self.solve_final_state(update_modifier, deps_modifier, prune, ignore_pinned,
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 300, in solve_final_state
        ssc = self._collect_all_metadata(ssc)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\common\io.py", line 88, in decorated
        return f(*args, **kwds)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 463, in _collect_all_metadata
        index, r = self._prepare(prepared_specs)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\solve.py", line 1058, in _prepare
        reduced_index = get_reduced_index(self.prefix, self.channels,
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\index.py", line 288, in get_reduced_index
        new_records = SubdirData.query_all(spec, channels=channels, subdirs=subdirs,
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\subdir_data.py", line 118, in query_all
        create_cache_dir()
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\subdir_data.py", line 876, in create_cache_dir
        cache_dir = join(PackageCacheData.first_writable().pkgs_dir, 'cache')
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\core\package_cache_data.py", line 151, in first_writable
        pkgs_dirs = context.pkgs_dirs
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\base\context.py", line 530, in pkgs_dirs
        fixed_dirs += user_data_dir(APP_NAME, APP_NAME),
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\_vendor\appdirs.py", line 67, in user_data_dir
        path = os.path.join(_get_win_folder(const), appauthor, appname)
      File "C:\ProgramData\anaconda3\lib\site-packages\conda\_vendor\appdirs.py", line 284, in _get_win_folder_with_pywin32
        from win32com.shell import shellcon, shell
    ImportError: DLL load failed while importing shell: 找不到指定的程序。

`$ C:\ProgramData\anaconda3\Scripts\conda-script.py install pybindll`

  environment variables:
conda info could not be constructed.
KeyError('pkgs_dirs')

An unexpected error has occurred. Conda has prepared the above report.

If submitted, this report will be used by core maintainers to improve
future releases of conda.
Would you like conda to send this report to the core maintainers?

[y/N]: n

No report sent. To permanently opt-out, use

    $ conda config --set report_errors false

尝试了很多网上的方法都不行,环境变量也没问题,最后conda重新安装还是不行,最终找到的办法如下:

解决办法:

找到C:\Users\{用户名}\AppData\Roaming\Python\Python{version}\site-packages这个路径,删除site-packages这个文件夹,conda报错便消失。

输入conda info验证:
在这里插入图片描述
没有问题,说明问题解决。

问题分析:

conda安装后,从上面可以看到,conda install自动下载的脚本和安装包是在C:\ProgramData\anaconda3\pkgs; C:\Users\Administrator\.conda\pkgs; C:\Users\Administrator\AppData\Local\conda\conda\pkgs

而pip安装各种包的默认安装地址是C:\Users\{用户名}\AppData\Roaming\Python\Python{version}\site-packages; C:\Users\{用户名}\AppData\Roaming\Python\Python{version}\scripts;这里可以通过python -m site命令查看:
在这里插入图片描述
其中USER_BASE和USER_SITE就是python默认通过pip自动下载的脚本和依赖安装包的基础路径。(我这里doesn’t exist是因为我已经删掉这个文件夹了)
然后使用命令python -m site -help,可以看到
在这里插入图片描述
说明这个路径配置是在anaconda3\lib\site.py这个文件中。可以对这个进行修改换成自己脚本和包的安装路径。
可以再次使用python -m site来查看是否替换成功

PS: 多说一句,看conda官方issue中提到,尽量不要使用pip和conda混合安装,因为两种安装方法的二进制编译存在差异,暂时还不清楚和这个有没有关系,但pip和conda最好是常常只用一种方式。

参考资料:

Windows conda ImportError: DLL load failed while importing shell

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/stone_tigerLI/article/details/126051037

智能推荐

接口自动化入门:Jmeter的多组数据测试、JDBC驱动及数据断言!-程序员宅基地

文章浏览阅读914次,点赞8次,收藏7次。在进行接口测试时,我们经常需要对接口进行多组数据测试,以验证接口在不同输入条件下的表现。同时,我们也需要对接口返回的数据进行断言,以确保接口返回的数据符合预期结果。JMeter正是一个强大的工具,可以帮助我们实现这些需求。

RuoYi-Vue-Plus(登录流程-验证码生成)_ruoyi-vue-plus百度网盘-程序员宅基地

文章浏览阅读135次。1- 进入登录页面,调用 com.ruoyi.web.controller.common.CaptchaController 类中的captchaImage 方法,2- 提交 登录信息 + 验证码 + uuid 比对错误:返回错误信息,删除缓存的验证码,加入缓存。_ruoyi-vue-plus百度网盘

Java使用pdf模板生成pdf文件_java根据pdf模板生成pdf-程序员宅基地

文章浏览阅读9.1k次,点赞11次,收藏35次。有时候,业务中我们需要使用pdf模板生成一份pdf文件。如何生成pdf文件?如下,我们把左侧的模板生成为右侧的填充文件。_java根据pdf模板生成pdf

150408-83-6,TAMRA-NHS,TAMRA-SE能与蛋白质上的氨基反应-程序员宅基地

文章浏览阅读386次,点赞8次,收藏7次。CAS:150408-83-6|英文名称:TAMRA-NHS,TAMRA-SE|中文名称:5(6)-羧基四甲基罗丹明琥珀酰亚胺酯,四甲基罗丹明活性酯。TAMRA maleimide,6-isomer,6-TAMRA-mal 四甲基罗丹明-马来酰亚胺,6-异构体。TAMRA maleimide,5-isomer,四甲基罗丹明-马来酰亚胺,5-异构体。TAMRA-PEG4-Tetrazine,四甲基罗丹明-四聚乙二醇-四嗪。TAMRA amine,5-isomer,四甲基罗丹明-氨基,5-异构体。

客户端jQuery操作json_如何在客户端操作jquery代码-程序员宅基地

文章浏览阅读3.5k次。经常性的会模糊json格式的指定,时间一长很容易忘记,而且在客户端编程当中也非常容易出现错误,并且很难找出其中错在何处。这一切都归结于对json格式的定义不是十分清楚,今天很幸运看到了http://www.ruanyifeng.com/blog/2009/05/data_types_and_json.html这篇文章,其中对于json格式的定义非常清楚。摘了下面一段:Json的规格非常简单_如何在客户端操作jquery代码

记录ENVI5.6和SARscape5.6.2处理时遇到的问题_envi轨道数据放哪-程序员宅基地

文章浏览阅读2.4k次,点赞22次,收藏39次。可能是因为外接了显示屏,使用了HDMI线。处理方法是先将HDMI拔掉,再将ENVI启动,启动后再将HDMI线进行连接。一、ENVI5.6启动时显示"illegal keywaord value for YSIZE"二、ENVI5.6闪退。_envi轨道数据放哪

随便推点

Html结构解析-程序员宅基地

文章浏览阅读2.6k次,点赞7次,收藏48次。一、html文档树状图结构  1)html树状图2)html代码解释树形图<!DOCTYPE html> <!--声明--><html lang="en"> <!--html开始--><head> <!--头部开始--> <..._html页面可以解析为什么结构

Pixhawk解锁常见错误_rc throttle not configured-程序员宅基地

文章浏览阅读4.4k次,点赞2次,收藏50次。这个我看写得还挺不错的,终于有人比较全地总结一下了。摘自:http://www.paopaola.com/m/news/notice/3571899352.htmlPixhawk解锁常见错误2019-06-08 09:03:52点击:995第一次解锁,接上MP看着HUD的提示,即飞行数据的界面:一般的不成功解锁有以下的原因(网络整理)(1)HUD显示“RC not calibrated”:没有成功进行校正遥控器,需要校正遥控器。(2)HUD显示“C..._rc throttle not configured

/usr/lib/x86_64-linux-gnu/libQt5Core.so.not found的解决办法-程序员宅基地

文章浏览阅读893次。原因是ros在安装的时候,也安装了一些qt的依赖库,位于/usr/lib/x86_64-linux-gnu/路径。删掉这些库,用自己安装的库替换掉即可。_x86_64-linux-gnu

Prometheus监控神器-Alertmanager篇(二)-程序员宅基地

文章浏览阅读1.5k次。Docker 技术鼻祖系列本章主要对如何使用开源组件和Alertmanager组件集成警报通知。Kubernetes的警报集成后续会直接在配置文件讲解,原理大同小异,此处仅对相关警报通知..._alertmanager-wechatrobot-webhook

对于batch_size的一些个人看法_batch size越大收敛越慢-程序员宅基地

文章浏览阅读2.7k次。看到知乎上有人讨论batch_size的大小带来的影响,在这里进行一下总结https://www.zhihu.com/question/32673260_batch size越大收敛越慢

VMware虚拟机中安装 Androidx86 4.4 R5安装配置详细图文教程_android x86 4.4 r5 iso镜像-程序员宅基地

文章浏览阅读1.6w次。Android的PC版有个官网:http://www.android-x86.org/首先进去挑一个版本,我挑选的是Android-x86 4.4-r5 (KitKat-x86) 2016/02/06先看下载链接。教程在后面。下载页:https://sourceforge.net/projects/android-x86/files/Release%204.4/直链:http:_android x86 4.4 r5 iso镜像