首页 > 解决方案 > 无法使用 python 2.7 和更新的 pyserial 3.4 设置 vpython(python 的视频)

问题描述

我正在尝试遵循一个有点过时的在线教程。但我喜欢这位讲师以及他如何遵循他的课程。他在视频中使用了 python 2.7 和旧版本的 pyserial(我相信是 2.6),我再也找不到下载了。我继续安装了最新的 python (3.7),以及最新版本的 pyserial (3.4)。并且都安装成功没有问题。

然而,他用来编写我们的脚本的另一个类似 IDE 的程序(“vPython or videl for python”)仅支持最高 2.7.9 的 python 版本

这让我回溯并将python(2.7)的旧版本安装在一个单独的目录中,而python 3.7仍然安装在另一个目录中。

由于旧版本的 pyserial 不再可用,我尝试使用 python 2.7 安装较新的 pyserial 3.4 包,但每次我通过 windows 命令行安装时,它都会给我一个错误,提示“模块 'serial' 不可用'。

这已经是在我将 pyserial 3.4 包解压缩到 python 2.7 "Lib\site-packages\" 目录之后。而且我们可以清楚地看到'serial'文件夹肯定在2.7的python库中。

我想知道它是否因为修订版本的差异而无法安装模块,或者是因为命令行终端默认为最新版本的 python (3.7) 自动执行安装。

如果这是不兼容的,也许有人可以帮助提供旧版本的 pyserial 的链接或帮助我找到解决此问题的另一种方法。

编辑:我找到了 pyserial 2.7 的版本,但它适用于 32 位 Windows 而不是 64。我一直坚持使用 64 位版本的 python 和 vpython。

标签: pythonpyserialvpython

解决方案


所以我找到了适用于 windows 32 位的 pyserial 2.7 的旧版本。我不确定 pyserial 在 2.7 发布时是否有 64 位版本,因为我找不到它。我卸载了 python 2.7 64 位并将其替换为 32 位,然后对 vpython 执行相同操作。

这使程序成功启动并运行,并且很好地导入了串行库。

下一个问题是 32 位 vpython 和 64 位 arduino 不能很好地结合使用。尽管逐字复制代码并使其正确编译,但我无法让 vpython 从 arduino 读取串行数据。

我的解决方案只是改用 pycharm IDE。它有一个包安装程序,可以为您下载和安装所有内容。也感谢上帝,因为我花了大约 3 个小时试图通过命令终端手动安装软件包,但一直遇到兼容性问题,例如过时的已发布文件、通过 cmd 出现令人讨厌的语法错误、“此平台不支持”错误(尽管 pip并且一切都是 100% 洁净的)并且没有 microsoft C++ 版本 14 并且不知道缺少此资源。

但是 pycharm 解决了这一切。对不起,有点咸的反应。我只是希望它可以节省别人的时间。在任何地方的任何官方网站上都没有建议这样做,这很令人沮丧。


推荐阅读