我正在尝试在Webots中使用numpy模块,但无论如何我都会得到
0.0.0.0:7766
我已经在numpy和pip2和pip3上都安装了numpy,但两者似乎没有任何区别,并且该软件包显示在INFO: assignment_2_controller_2: Starting controller: python3.6 -u "assignment_2_controller_2.py"
[assignment_2_controller_2] Traceback (most recent call last):
[assignment_2_controller_2] File "assignment_2_controller_2.py", line 4, in <module>
[assignment_2_controller_2] import numpy
[assignment_2_controller_2] ModuleNotFoundError: No module named 'numpy'
WARNING: 'assignment_2_controller_2' controller exited with status: 1.
中。我还可以确认此模块可在python编辑器和其他python文件中正常工作。
在webots python Makefile中或在我的环境变量中是否可能需要更改某些内容?
编辑: 打印sys.path显示
~/.local/lib/python3.6/site-packages
我使用snap安装了webot,但是为什么不使用PATH环境变量指定的python?
修复: 从外观上看,snap创建了一个包含的文件系统,供设计用于在其中安装自己的python二进制文件的webots运行。因此,我用snap卸载了webot,然后从其网站的.deb文件安装了它,现在一切正常。
答案 0 :(得分:1)
从Snap软件包安装的Webot在一种沙箱中运行,因此使用的是随Snap软件包分发的Python版本(您不能更改)。
如文档中所述,您可以使用外部控制器来启动自己的控制器,而不是让Webots启动它。这样,您可以选择要使用的Python版本:https://cyberbotics.com/doc/guide/installation-procedure#installing-the-snap-package
或者,您可以使用其他方式(从Debian或归档软件包)安装Webots。其他安装不是Python随附的,而是使用系统Python。