0

我对python有一个问题。我正在尝试使用我的 LegoMindstorms EV3 构建一些东西并尝试使用 Python。我以前从未使用过 Python,所以这是我使用它的第一天。我尝试了很多并浏览了网络,但我找不到我的 Proplem 的解决方案。当我想在 VS Code 的控制台中打印某些内容时,我使用print()这可以工作,当我#!/usr/bin/env pybricks-micropython在顶部使用时,但我需要#!/usr/bin/env python3使用一些库。但是当我使用 Python3 标头并调用例如print('Hello')只有当我使用 micropython 标头时,输出控制台才会出现任何内容。但在这两种情况下,消息都会显示在 EV3 屏幕上,但我希望它在简单的输出终端中。我想知道我是否在这里遗漏了一些明显的东西,我搜索了两个多小时但找不到我的问题。我在 EV3 和 VS Code 上使用最新的 EV3Dev 软件和 Python 3.8.7 64 位

任何人都可以帮助我吗?

4

1 回答 1

0

在 microSD 卡上带有 ev3dev 的 EV3 默认安装了多个 Python 版本:

#!/usr/bin/env pybricks-micropython顶部,您的脚本将使用Pybricks运行。

这是MicroPython的一个版本,增加了对 LEGO 硬件(如电机和传感器)的支持。这是LEGO支持的推荐方法。因为 MicroPython 非常节省资源并且集成了硬件支持,所以运行流畅。但是你不能使用所有的 Python 库。相反,将相关代码复制到项目文件夹中的模块并导入该模块通常更容易。

输出print将打印到 Visual Studio Code 中的控制台。

#!/usr/bin/env python3顶部,您的脚本将使用 Python 3 运行。

它没有内置的 LEGO 硬件支持,但存在诸如ev3dev-lang-python 之类的 Python 库,它们通过 ev3dev 文件系统与硬件接口。由于这只是普通的 Python 3,理论上你可以使用任何你想要的 Python 库。但是由于 EV3 的处理能力有限,普通的 Python 3 非常慢,安装额外的库甚至更慢。

要在 Visual Studio Code 中显示打印输出,请执行以下操作:

import sys

print('Hello, world!', file=sys.stderr)
于 2021-06-21T09:08:21.017 回答