文章内容仅用于自己知识学习和分享,如有侵权,还请联系并删除 :)
1. 错误原因: 参考了多个博主的解决办法,结合自己的尝试,发现造成这个问题的主要原因是numpy版本太高
2. 解决方法
- 方法1(推荐): conda 新建一个虚拟环境,在虚拟环境下直接安装: link
# step1: 新建一个名为‘env_new’的环境,这里以安装python3.7为例
conda create --prefix==./...env_new python=3.7# step2: 激活环境
conda activate ./...env_new python=3.7# step3: 安装pyhdf
conda install -c conda-forge pyhdf# step4: 测试
import pyhdf
from pyhdf.SD import SD,SDC
-
方法2: 下载pyhdf .whl 文件安装 (这里以python 3.9为例) link
-
说明:
-
python3.9本人试过numpy==1.26.4和pyhdf-0.10.5,成功;
-
python2见 link
-
其余版本不知道
# 这里以python 3.9 为例# step1: 安装numpy
pip install numpy==1.26.4# step2: 安装pyhdf1)下载链接: https://pypi.org/project/pyhdf/0.10.5/#files
2)下载文件: pyhdf-0.10.5-cp39-cp39-win_amd64.whl (546.9 kB view hashes)
3)安装:pip install pyhdf-0.10.5-cp39-cp39-win_amd64.whl# step3: 测试
import pyhdf
from pyhdf.SD import SD,SDC说明: 本人试过numpy==1.26.4和pyhdf-0.10.5,成功;其余版本不知道
3. 参考
[1] 成功解决在from pyhdf.SD import SD,SDC时No module named ‘hdfext‘的问题: : link
[2] anaconda 安装 pyhdf 成功后 from pyhdf.SD import SD,SDC报错: link
[3] pyhdf库的安装方法: link
[4] Error: numpy.core.multiarray failed to import pyhdf: link