You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python导入hashes模块hashSHA1、hashSHA256报ImportError如何解决

问题现象

执行如下导入语句时触发ImportError:

from hashes import hashSHA256, hashSHA1

对应报错信息:

ImportError: cannot import name 'hashSHA256' from 'hashes' (C:\Users\A784592\Anaconda3\lib\site-packages\hashes\__init__.py)

排查发现安装路径下的hashes包__init__.py为空,多次执行pip install hashes、卸载重装该包均无法解决问题。

问题原因

你通过pip安装的PyPI源上的hashes包本身就是无对应实现的空壳包,根本没有导出hashSHA256、hashSHA1这两个对象,和你代码里需要引用的哈希模块完全不是同一个东西,反复重装不会解决任何问题。从你贴的代码片段看,你已经安装了cryptography库,你需要的哈希能力本身就来自这个库,不存在单独的hashes依赖包。

修复步骤
  • 首先卸载错装的空壳hashes包,避免包名冲突,执行命令:
    pip uninstall -y hashes
    
  • 从你已经安装的cryptography库中正确导入哈希相关实现即可,参考写法:
    from cryptography.hazmat.primitives import hashes
    # 实例化对应哈希算法对象,对应你原本要导入的两个对象
    hashSHA256 = hashes.SHA256()
    hashSHA1 = hashes.SHA1()
    
  • 如果你原本是要引用自己项目中自定义的hashes.py文件,确认该文件和当前运行的脚本处于同一工作目录下,且文件内确实定义了hashSHA256、hashSHA1两个方法/对象,避免自定义模块名和第三方包名产生冲突。

内容的提问来源于stack exchange,提问作者Khaled

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 01:15:39