Python无法在库中导入模块

2024-09-28 21:58:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用PyQt5的QSerialPort模块。我所发现的一切都表明,包含QSerialPort的QtSerial应该与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)

我尝试过从PyCharm内部安装PyQt5,也尝试过使用pip在命令行上安装PyQt5。我已尝试升级pip并重新安装PyQt5。我能够使用PyQt5的其他模块,例如PyQt5.qtwidts导入,没有任何问题。我还尝试从AUR安装qt5-serialport-595qt51-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

这不是由导入语句中的输入错误引起的。我已经尝试了几乎所有可能的字母Q和T以及单词Serial和Port的排列。如何使用PyQt5的串行模块


Tags: 模块pip命令行fromimportlibpackagesusr
1条回答
网友
1楼 · 发布于 2024-09-28 21:58:09

基于this Archlinux forums post,我运行了pacman -Si python-pyqt5,它给了我一个可选的dep列表,其中包括qt5-serialport: QtSerialPort行,所以我使用yay安装qt5 serialport。出于某种原因,这不同于qt51-serialportqt5-serialport-595,事实上也不同于任何AUR packages with serialport in the name that can be found by searching the AUR site。现在,当我在命令行上使用python时,我可以from PyQt5.QtSerialPort import QSerialPort没有错误

我应该注意到,PyCharm用于查找可安装包的https://pypi.python.org/simple包repo、可搜索的AUR列表和pip似乎都没有将qt5 serialport显示为一个选项。因此,即使我下载了它,python可以从命令行找到它,PyCharm仍然没有导入它,这是一个单独的问题

相关问题 更多 >