class QJsonArray#

QJsonArray类封装了一个JSON数组。更多...

概要#

方法#

静态函数#

注意

本文档可能包含自动从C++转换为Python的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译中的问题,您也可以通过在https:/bugreports.qt.io/projects/PYSIDE创建工单来让我们知道

详细描述#

JSON数组是一系列值的列表。可以使用插入和删除操作来操纵列表中的QJsonValue

QJsonArray可以转换为QVariantList,也可以从其转换。您可以使用size()insert()removeAt()方法来查询条目数量、从其插入和删除条目,并使用标准的C++迭代器模式遍历其内容。

QJsonArray是一个隐式共享类,只要它没有被修改,就会与创建它的文档共享数据。

您可以通过QJsonDocument将其转换为基于文本的JSON,反之亦然。

__init__(other)#
参数:

otherQJsonArray

创建other的副本。

由于QJsonArray是隐式共享的,只要对象没有被修改,副本将是浅副本。

__init__()

创建一个空数组。

append(value)#
参数:

valueQJsonValue

在数组的末尾插入value

at(i)#
参数:

i – int

返回类型::

QJsonValue

返回一个代表索引 i 值的 QJsonValue 对象。

如果 i 超出范围,返回的 QJsonValue 将是 Undefined

contains(element)#
参数:

elementQJsonValue

返回类型::

bool

如果数组中包含 value 的实例,则返回 true,否则返回 false

参见

count()

count()#
返回类型::

int

size()} 相同。

参见

size()

empty()#
返回类型::

bool

此函数提供 STL 兼容性。它与 isEmpty()} 等效,如果数组为空,则返回 true

first()#
返回类型::

QJsonValue

返回数组中存储的第一个值。

at(0) 相同。

参见

at()

static fromStringList(list)#
参数:

list – 字符串列表

返回类型::

QJsonArray

将字符串列表 list 转换为 QJsonArray

list 中的值将被转换为 JSON 值。

static fromVariantList(list)#
参数:

list – QVariant 列表

返回类型::

QJsonArray

将变体列表 list 转换为 QJsonArray

QVariant 中的值将转换为 JSON 值。

注意

QVariant 转换并非完全无损。请参见 fromVariant() 中的文档以获取更多信息。

insert(i, value)#
参数:
  • i – int

  • valueQJsonValue

在数组的索引位置 i 插入 value。如果 i0,则将值添加到数组的前端。如果 i 等于 size(),则将值添加到数组的末尾。

isEmpty()#
返回类型::

bool

如果对象为空,则返回 true。这相当于 size() == 0。

参见

size()

last()#
返回类型::

QJsonValue

返回数组中存储的最后一个值。

at(size() - 1) 相同。

参见

at()

__ne__(other)#
参数:

otherQJsonArray

返回类型::

bool

如果此数组与 other 不相等,则返回 true

__add__(v)#
参数:

v - QJsonValue

返回类型::

QJsonArray

返回一个数组,该数组包含此数组中的所有项,后面跟着提供的 value

参见

operator+=()

__iadd__(v)#
参数:

v - QJsonValue

返回类型::

QJsonArray

value 添加到数组中,并返回数组的引用。

参见

append() 操作符

__lshift__(v)#
参数:

v - QJsonValue

返回类型::

QJsonArray

value 添加到数组中,并返回数组的引用。

参见

operator+=() append()

__eq__(other)#
参数:

otherQJsonArray

返回类型::

bool

如果此数组与 other 相等,则返回 true

operator(i)#
参数:

i – int

返回类型::

QJsonValue

这是一个重载函数。

等同于 at()

pop_back()#

此函数提供以与 STL 兼容。它等同于 removeLast()。数组不能为空。如果数组可以为空,请在调用此函数之前调用 isEmpty()

pop_front()#

此函数提供以与 STL 兼容。它等同于 removeFirst()。数组不能为空。如果数组可以为空,请在调用此函数之前调用 isEmpty()

prepend(value)#
参数:

valueQJsonValue

value 插入数组开头。

这等同于 insert(0, value) 并将 value 预先添加到数组中。

push_back(t)#
参数:

tQJsonValue

此函数提供与 STL 兼容性。它相当于 append(value) 并将 value 追加到数组中。

push_front(t)#
参数:

tQJsonValue

此函数提供与 STL 兼容性。它相当于 prepend(value) 并将 value 预先添加到数组中。

removeAt(i)#
参数:

i – int

删除索引位置为 i 的值。 i 必须是数组的有效索引位置(即,0 <= i < size())。

removeFirst()#

删除数组中的第一个项。调用此函数等价于调用 removeAt(0)。数组不能为空。如果数组可以空,在调用此函数之前调用 isEmpty()

removeLast()#

删除数组中的最后一个项。调用此函数等价于调用 removeAt(size() - 1)。数组不能为空。如果数组可以空,在调用此函数之前调用 isEmpty()

replace(i, value)#
参数:
  • i – int

  • valueQJsonValue

value 替换索引位置为 i 的项。i 必须是数组中的一个有效索引位置(即,0 <= i < size())。

参见

operator[]() removeAt()

size()#
返回类型::

int

返回数组中存储的值的数量。

swap(other)#
参数:

otherQJsonArray

与此数组交换 other。此操作非常快速且绝不会失败。

takeAt(i)#
参数:

i – int

返回类型::

QJsonValue

删除索引位置为 i 的项并返回它。i 必须是数组中的一个有效索引位置(即,0 <= i < size())。

如果您不使用返回值,removeAt() 更高效。

参见

removeAt()

toVariantList()#
返回类型::

QVariant 列表

将此对象转换为 QVariantList

返回创建的列表。