最近在做一个基于ROS和Gazebo的无人机仿真,中途下载了Anaconda3,创建了一个环境做了其他小实验,然后回头再打开无人机仿真的工作空间就是失败了,出现如下错误:
通过查询发现有人曾遇到相同的问题(下附链接),本人也从中找到了导致该问题出现的原因。
https://answers.ros.org/question/265455/modulenotfounderror-no-module-named-re/?sort=latest
原因就是下载Anaconda3之后运行了source ~/.bashrc命令配置了环境变量,导致在重新运行无人机仿真时python2.7和python3.7互相混淆,Python2.7是ROS使用的版本,而Python3.7是新装的Anaconda3中的版本。
解决方法就是修改home目录下的.bashrc文件,将配置anaconda环境变量的语句注释或者删除,例如
然后就可以重新运行无人机仿真了,但是此时conda指令就无法使用:
这时只要运行以下命令编辑.bashrc就可以:(注意路径按照自己安装anaconda3的位置写)
echo ". /home/wsco/anaconda3/etc/profile.d/conda.sh" >> ~/.bashrc
然后.bashrc中会出现一下内容:
这时候我们就可以正常在gazebo下运行基于ROS的无人机仿真,同时正常使用conda指令。
(注意每次修改.bashrc后重新打开一个新的终端才会起作用)