PySide6.QtQml.QJSValueIterator¶
- class QJSValueIterator¶
QJSValueIterator
类为QJSValue
提供了一个 Java 风格的迭代器。更多…概要¶
方法¶
def
__init__()
def
hasNext()
def
name()
def
next()
def
value()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
警告
本节包含从C++自动翻译到Python的代码片段,可能包含错误。
QJSValueIterator
构造函数接受一个QJSValue
作为参数。构造后,迭代器位于属性序列的最开始位置。以下是遍历QJSValue
所有属性的方法:object = QJSValue() ... it = QJSValueIterator(object) while it.hasNext(): it.next() print(it.name(), ": ", it.value().toString())
next()
用于推进迭代器。name()
和value()
函数返回被跳过的最后一项的名称和值。请注意,
QJSValueIterator
只遍历QJSValue
自身的属性;也就是说,它不会跟随原型链。你可以使用这样的循环来跟随原型链:obj = ... # the object to iterate over while obj.isObject(): it = QJSValueIterator(obj) while it.hasNext(): it.next() print(it.name()) obj = obj.prototype()
另请参阅
构造一个用于遍历
object
的迭代器。迭代器被设置为位于属性序列的前面(在第一个属性之前)。- hasNext()¶
- Return type:
布尔
如果迭代器前面至少有一个项目(即迭代器不在属性序列的末尾),则返回true;否则返回false。
另请参阅
- name()¶
- Return type:
字符串
返回使用
next()
跳过的最后一个属性的名称。另请参阅
- next()¶
- Return type:
布尔
将迭代器向前推进一个位置。如果迭代器前面至少有一个项目(即迭代器没有已经在属性序列的末尾),则返回true;否则返回false。
返回使用
next()
跳过的最后一个属性的值。另请参阅