Ubuntu16.04下Python多版本共存时h5py安装异常求助
解决Python 3.5无法导入h5py的问题
这问题我碰到过不少,核心原因是你的pip3命令其实关联到了Python 2.7的环境,导致安装的包没进Python 3.5的路径里。下面给你几个靠谱的解决办法:
1. 直接用Python 3.5的解释器调用pip安装
这是最稳妥的方式,绕开pip3可能的关联错误:
python3.5 -m pip install h5py --user
加上--user参数会把包安装到当前用户的Python 3.5专属路径,不会影响系统全局环境。
2. 确认并修复pip3的关联
先检查pip3到底对应哪个Python版本:
pip3 --version
如果输出里显示的是python2.7,说明你的pip3被错误关联了。可以用下面的命令重新安装正确的pip3:
sudo apt-get remove python3-pip python3.5 -m ensurepip --upgrade
修复完成后再运行pip3 install h5py,应该就会安装到Python 3.5的路径里了。
3. 使用虚拟环境隔离Python版本(推荐)
虚拟环境能彻底避免不同Python版本的包冲突,步骤如下:
- 创建Python 3.5的虚拟环境:
python3.5 -m venv h5py_env - 激活虚拟环境:
source h5py_env/bin/activate - 在激活的环境里安装h5py:
pip install h5py
之后每次需要用这个环境时,激活它就行,退出环境用deactivate命令。
验证安装成功
安装完成后,运行下面的命令确认Python 3.5能正常导入h5py:
python3.5 -c "import h5py; print('h5py版本:', h5py.__version__)"
如果能正常输出版本号,就说明问题解决啦!
内容的提问来源于stack exchange,提问作者Veronika R.
相关产品推荐
相关产品推荐

