ImportError: cannot import name 'QStringList' in PyQt5
ImportError: cannot import name 'QStringList' in PyQt5
我正在使用 PyQt5 但无法导入 QStringList。我知道 QStringList 曾经在 PyQt4 的模块 QtCore 中。所以我尝试使用
导入 class
from PyQt5.QtCore import QStringList
但是它显示这个错误
C:\Python34\python.exe C:/Users/User/PycharmProjects/FirstProject/Test.py
Traceback (most recent call last):
File "C:/Users/User/PycharmProjects/FirstProject/Test.py", line 3, in <module>
from PyQt5.QtCore import QStringList
ImportError: cannot import name 'QStringList'
我正在使用 PyCharm,它在自动完成中显示了一个名为 QStringListModel 的东西。我正在关注 Mark Summerfield 的书 "Rapid GUI Development with Python and Qt"。我如何使用 QStringList 或 PyQt5 中的任何其他可以完成 QStringList 工作的东西?
在 PyQt5 中,没有 QString
因此不需要 QStringList
。
任何 Qt API 通常 return 一个 QString
,将自动 return 一个 Python 字符串。类似地,任何通常 return 一个 QStringList
的 Qt API 将 return 一个包含 Python 字符串的 Python 列表。反之亦然:任何 Qt API 通常 接受 一个 QString
或 QStringList
将接受 Python 等价物。
这与使用 PyQt4 with Python 3, or when explicitly setting the API to version 2 使用 sip.setapi
时的默认行为相同。
有关详细信息,请参阅:Differences Between PyQt4 and PyQt5 in the PyQt5 Reference。
由于找不到解决此问题的方法,因此我想出了一个解决方法来满足我的需要。我从 shell 脚本启动我的 python 脚本并使用 grep 忽略错误消息。我希望这对其他人有帮助。 ~/run/r_entry.py 2>&1| grep -v FIFinderSyncExtensionHost
我正在使用 PyQt5 但无法导入 QStringList。我知道 QStringList 曾经在 PyQt4 的模块 QtCore 中。所以我尝试使用
导入 classfrom PyQt5.QtCore import QStringList
但是它显示这个错误
C:\Python34\python.exe C:/Users/User/PycharmProjects/FirstProject/Test.py
Traceback (most recent call last):
File "C:/Users/User/PycharmProjects/FirstProject/Test.py", line 3, in <module>
from PyQt5.QtCore import QStringList
ImportError: cannot import name 'QStringList'
我正在使用 PyCharm,它在自动完成中显示了一个名为 QStringListModel 的东西。我正在关注 Mark Summerfield 的书 "Rapid GUI Development with Python and Qt"。我如何使用 QStringList 或 PyQt5 中的任何其他可以完成 QStringList 工作的东西?
在 PyQt5 中,没有 QString
因此不需要 QStringList
。
任何 Qt API 通常 return 一个 QString
,将自动 return 一个 Python 字符串。类似地,任何通常 return 一个 QStringList
的 Qt API 将 return 一个包含 Python 字符串的 Python 列表。反之亦然:任何 Qt API 通常 接受 一个 QString
或 QStringList
将接受 Python 等价物。
这与使用 PyQt4 with Python 3, or when explicitly setting the API to version 2 使用 sip.setapi
时的默认行为相同。
有关详细信息,请参阅:Differences Between PyQt4 and PyQt5 in the PyQt5 Reference。
由于找不到解决此问题的方法,因此我想出了一个解决方法来满足我的需要。我从 shell 脚本启动我的 python 脚本并使用 grep 忽略错误消息。我希望这对其他人有帮助。 ~/run/r_entry.py 2>&1| grep -v FIFinderSyncExtensionHost