【问题标题】:How can I create a QList object?如何创建 QList 对象?
【发布时间】:2014-08-06 11:52:33
【问题描述】:

我已导入以下 2 个库:

from PyQt4.QtCore import *
from PyQt4.QtGui import *

我正在尝试创建一个 QList 对象,如下所示:

self.myList = QList()

我收到一个错误:

NameError: global name 'QList' is not defined

QList 在 QtCore 下,我希望它可以工作。

请建议如何纠正它。

【问题讨论】:

  • 您确定 QList 吗?在pyqt.sourceforge.net/Docs/PyQt4/classes.html 上,他们只列出 QListView、QListWidget 和 QListWidgetItem(+ QTextList 之类的东西……)但没有 QList
  • 是的,请看link
  • QList 在 C++ 中可用作方便的容器 - 在 pyqt 中您应该使用本机容器。
  • 哦好吧..请建议我应该在pyqt中使用什么,类似于QList()?

标签: python python-2.7 qt4 pyqt4


【解决方案1】:

QList 类是一个提供列表的模板类。仅在 C++ 中可用。 但是在 python 中,它已经准备好使用python list 数据类型。 如果你想使用类似列表的行为,你可以使用python list 类似QList

我对此有参考有用的教程点。请阅读此内容以实施python list

Python 列表http://www.tutorialspoint.com/python/python_lists.htm

还有,官方 Python 列表参考;

数据结构https://docs.python.org/2/tutorial/datastructures.html


问候,

【讨论】:

  • Python 列表不能用PyQt QDataStream 序列化,而Qt QList can be serialized 不能用C++ 序列化。如果没有预防措施,QList 不能被 Python 列表替换,例如移植this C++ example时。私有变量QList<Contact> contactsAddressWidget::writeToFile() 中序列化。这种 C++ 方法在移植到 Python 时需要进行一些调整。
猜你喜欢
  • 2014-10-05
  • 1970-01-01
  • 2014-12-01
  • 1970-01-01
  • 2013-04-06
  • 1970-01-01
  • 1970-01-01
  • 2016-03-18
  • 1970-01-01
相关资源
最近更新 更多