每当我想运行我的程序时,我都面临着一个突破性的错误。我的团队成员使用相同的代码,但没有收到错误。我第一次收到错误时,我要求我的团队成员通过git提交他的代码(与我的完全相同)并将其拉入。程序运行没有错误。但是,即使我从同事那里通过git获取代码(适用于他们),问题仍然存在。这是代码:
#!/usr/bin/env python
import roslib; roslib.load_manifest('drone7_project')
import rospy
# bunch of other import statements
每当我运行程序时,这就是我收到的错误:
/ bin / bash /home/user/Projects/catkin_ws/src/drone7_project/Project/drone_program.py
/home/user/Projects/catkin_ws/src/drone7_project/Project/drone_program.py:line 2:意外令牌"drone7_project"'
/home/user/Projects/catkin_ws/src/drone7_project/Project/drone_program.py: line 2:
附近的语法错误导入roslib; roslib.load_manifest(" drone7_project&#34)'
drone7_project包存在且不应该是问题。我不应该得到语法错误,因为我的所有其他团队成员都没有得到它(4个成员),而且我们使用完全相同的代码。
注意使用单引号和双引号错误会在drone7_project周围返回,而在代码中只使用单引号。我试过双引号,同样的问题。
答案 0 :(得分:0)
您没有使用Python解释器执行Python代码(相反,您的shell希望运行该代码,这会产生您正在观察的语法错误)。您是否检查了系统中/usr/bin/env python
实际返回的内容?
您必须正确设置PATH,以便它包含一个目录,其中包含您要运行Python脚本的Python解释器的可执行文件。
另一种方法是显式调用选择的Python解释器,并提供Python脚本的路径作为参数,如
$ /path/to/python27 /home/user/Projects/catkin_ws/src/drone7_project/Project/drone_program.py