ROS Melodic Python2.7环境导入gym库出现ImportError问题求助
问题根因
- 执行
sudo pip install时未加-H参数,导致gym被安装到当前用户的.local/lib/python2.7/site-packages目录下,但文件属主为root,普通用户无读取权限,因此出现导入失败、pip list查询不到安装记录的问题 - 最新版gym已停止对Python2.7的支持,直接安装默认版本无法适配当前环境
解决方案
- 第一步:清理错误安装的文件,修复权限
执行以下命令删除错误安装的gym文件,修复pip缓存目录权限:
sudo rm -rf /home/monojit/.local/lib/python2.7/site-packages/gym* sudo chown -R monojit:monojit /home/monojit/.cache/pip
- 第二步:安装适配Python2.7的指定gym版本
Python2.7支持的最高gym版本为0.15.7,加-H参数执行安装:
sudo -H pip install gym==0.15.7
- 第三步:验证安装效果
执行pip list | grep gym确认列表中出现gym 0.15.7的记录,再打开Python2.7执行import gym验证无导入错误即可。
注意:若你使用ROS Melodic默认Python环境,请勿使用虚拟环境安装gym,否则ROS运行时无法识别第三方库。
内容的提问来源于stack exchange,提问作者Monojit Sarkar
相关产品推荐
相关产品推荐

