0

考虑以下代码:

from PyQt5.QtCore import QJsonDocument

json = {
    "catalog": [
        {
            "version": None,
        },
    ]
}
QJsonDocument(json)

在 Python 3.7 和 PyQt 5.14.2 下,最后一行会导致以下错误:

TypeError: a value has type 'list' but 'QJsonValue' is expected

QJsonDocument明确支持列表:QJsonDocument({'a': []})工作正常。

发生什么了?

4

1 回答 1

0

事实证明,None价值就是原因。尽管文档清楚地表明QJsonDocument支持null值,None但 PyQt5 不支持:QJsonDocument({'a': None})导致

TypeError: a value has type 'NoneType' but 'QJsonValue' is expected.

如果在 PyQt 5.15 中没有修复,我会报告这个错误。

于 2020-05-28T12:12:47.320 回答