Python JSON 到数组 & PyQt QListWidget
Python JSON to array & PyQt QListWidget
我的问题是:
我调用服务器 API,答案是 JSON 文件(使用 base64 编码)
我想将 JSON 转换为数组,我想将此数组用于 PyQt QListWidget。
PyQt 列表示例:
Line1: TEST1-TEST NAME1
Line2: TEST2-TEST NAME2
Line3: TEST3-TEST NAME3
etc.
这是我的代码 base64 解码之后:
text_json=base64.b64decode(response)
data=json.loads(text_json)
print(data)
这是JSON(数据):
{u'resp': [{u'short_name': u'TEST1', u'long_name': u'TEST NAME1'},
{u'short_name': u'TEST2', u'long_name': u'TEST NAME2'},
{u'short_name': u'TEST3', u'long_name': u'TEST NAME3'}]}
这是我的 PyQt 代码:
self.List=QtGui.QListWidget(self)
self.List.resize(500,500)
self.List.move(0,0)
self.List.addItem()
self.List.show()
我的问题:
我想将 JSON 转换为数组,但此 JSON 文件是 unicode 格式。
我的计划:如果我有阵列,我知道阵列的数量。我可以将数组元素添加到 PyQt 列表中。 (我最大的问题是Python字典)但是如何将JSON转换成数组呢?或者如何在 Python 字典中解析?
或者有什么更简单的解决方案吗?
您在 data[resp]
中获得了您的姓名数组。您可以这样做以将 long_name
添加到您的列表中:
self.List=QtGui.QListWidget(self)
self.List.resize(500,500)
self.List.move(0,0)
for person in data["resp"]:
item = QtGui.QListWidgetItem(person["long_name"])
self.List.addItem(item)
self.List.show()
Here 是一些可能有用的文档。
您可以像这样直接将数据加载到列表小部件中:
for item in data['resp']:
self.List.addItem('%(short_name)s - %(long_name)s' % item)
Unicode 不是问题,因为 json
会为您完成所有转换。
我的问题是: 我调用服务器 API,答案是 JSON 文件(使用 base64 编码) 我想将 JSON 转换为数组,我想将此数组用于 PyQt QListWidget。
PyQt 列表示例:
Line1: TEST1-TEST NAME1
Line2: TEST2-TEST NAME2
Line3: TEST3-TEST NAME3
etc.
这是我的代码 base64 解码之后:
text_json=base64.b64decode(response)
data=json.loads(text_json)
print(data)
这是JSON(数据):
{u'resp': [{u'short_name': u'TEST1', u'long_name': u'TEST NAME1'},
{u'short_name': u'TEST2', u'long_name': u'TEST NAME2'},
{u'short_name': u'TEST3', u'long_name': u'TEST NAME3'}]}
这是我的 PyQt 代码:
self.List=QtGui.QListWidget(self)
self.List.resize(500,500)
self.List.move(0,0)
self.List.addItem()
self.List.show()
我的问题: 我想将 JSON 转换为数组,但此 JSON 文件是 unicode 格式。 我的计划:如果我有阵列,我知道阵列的数量。我可以将数组元素添加到 PyQt 列表中。 (我最大的问题是Python字典)但是如何将JSON转换成数组呢?或者如何在 Python 字典中解析? 或者有什么更简单的解决方案吗?
您在 data[resp]
中获得了您的姓名数组。您可以这样做以将 long_name
添加到您的列表中:
self.List=QtGui.QListWidget(self)
self.List.resize(500,500)
self.List.move(0,0)
for person in data["resp"]:
item = QtGui.QListWidgetItem(person["long_name"])
self.List.addItem(item)
self.List.show()
Here 是一些可能有用的文档。
您可以像这样直接将数据加载到列表小部件中:
for item in data['resp']:
self.List.addItem('%(short_name)s - %(long_name)s' % item)
Unicode 不是问题,因为 json
会为您完成所有转换。