Python,非数组元素的循环

Python,非数组元素的循环,python,json,Python,Json,我正在从客户端接收以下Json块。虽然这些项不是数组,但我需要在Python中将其作为数组处理。有什么合适的方法吗 { “订单”:“1234”, “日期”:“2020-02-10”, “项目”:{ “0”:{“ItemID”:“I1”, “数量”:“4”, “值”:“3.40” }, “1”:{“ItemID”:“W4”, “数量”:“2”, “值”:“1.40” }, “15”:{“ItemID”:“D2”, “数量”:“1”, “值”:“4.00” } } 提前感谢您的帮助。您可以迭代它们,

我正在从客户端接收以下Json块。虽然这些项不是数组,但我需要在Python中将其作为数组处理。有什么合适的方法吗

{ “订单”:“1234”, “日期”:“2020-02-10”, “项目”:{ “0”:{“ItemID”:“I1”, “数量”:“4”, “值”:“3.40” }, “1”:{“ItemID”:“W4”, “数量”:“2”, “值”:“1.40” }, “15”:{“ItemID”:“D2”, “数量”:“1”, “值”:“4.00” } }


提前感谢您的帮助。

您可以迭代它们,或者在迭代过程中创建一个数组(如果需要):

import json

data_str = '{ "Order": "1234", "Date":"2020-02-10", "Items":{ "0": {"ItemID": "I1", "Qty": "4", "Value":"3.40" }, "1": {"ItemID": "W4", "Qty": "2", "Value":"1.40" }, "15": {"ItemID": "D2", "Qty": "1", "Value":"4.00" } } }'

data = json.loads(data_str)
for item_index in data["Items"]
    print(item_index + ' :: ' + str(data["Items"][item_index]))
结果是:

1 :: {u'ItemID': u'W4', u'Value': u'1.40', u'Qty': u'2'}
0 :: {u'ItemID': u'I1', u'Value': u'3.40', u'Qty': u'4'}
15 :: {u'ItemID': u'D2', u'Value': u'4.00', u'Qty': u'1'}

你知道你可以用json包将json转换成Python中的字典吗?然后你只需要在Items字典中循环…你可以共享你想要运行的代码的最低版本吗?如果你可以使用
pandas
,它有一个.code>pandas.DataFrame.from_dict(你的_dict['Items')).T这个数组是什么样子的?看一看,它非常适合将Python对象编码为JSON并将JSON解码为Python对象。谢谢,它给了我一个方向