我正在尝试使用QSerialPort模块的PyQt5。我所发现的一切都表明,包含QtSerial的QSerialPort应该与PyQt5一起出现。例如,
>>> from PyQt5 import QtSerial
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name 'QtSerial' from 'PyQt5' (/usr/lib/python3.8/site-packages/PyQt5/__init__.py)我尝试过从PyQt5内部安装PyCharm,以及在命令行中安装pip。我尝试过升级pip并重新安装PyQt5。我能够使用PyQt5的其他模块,例如PyQt5.QtWidget导入,没有任何问题。我也尝试过从qt5-serialport-595和qt51-serialport安装奥尔 (我正在使用Archlinux),但没有效果。
当我转到命令行并运行$ pip list -v PyQt5时,我可以看到PyQt5安装在/usr/lib/python3.8/site-packages/上,当我查看那里时,我可以看到文件/usr/lib/python3.8/site-packages/PyQt5/QtSerialPort.abi3.so存在。但是,我也无法导入PyQt5.QtSerial,因为它也是找不到的,尽管它的消息略有不同:ImportError: libQt5SerialPort.so.5: cannot open shared object file: No such file or directory
这不是由import语句中的错误引起的。我已经尝试了几乎每一个可能的排列字母Q和T以及单词Serial。如何使用PyQt5的串行模块?
发布于 2020-11-24 12:44:28
基于这个Archlinux论坛的帖子,我运行了pacman -Si python-pyqt5,其中给出了包含行qt5-serialport: QtSerialPort的可选dep列表,因此我使用yay安装qt5-序列化端口。由于某种原因,这与qt51 51-串行端口、Qt5-串行口-595以及事实上的任何通过搜索AUR站点可以找到具有序列化端口的AUR包。都不同。现在,当我在命令行上使用python时,我可以在没有错误的情况下from PyQt5.QtSerialPort import QSerialPort。
我应该注意的是,https://pypi.python.org/simple的软件包回购( PyCharm用于查找可安装的包)、可搜索的AUR列表和pip似乎都没有将qt5-序列化作为一个选项。因此,即使我下载了它,并且python可以从命令行找到它,但是它仍然没有被PyCharm导入,这是一个单独的问题。
https://stackoverflow.com/questions/64985940
复制相似问题