思路就是:
字符串是个json格式(或转为json格式),然后str转为字典dict,然后循环遍历按照key来取值。
你的data是个字典 然后item_list是data的Key ,item_list是个数组,这个里面的数组中的每个元素都是一个字典。
因此就是dict多级路径按key取值。
import json
data1 = '{"data":{"itemList":[{"createTime":1647412030000,"createUserName":"\u9999\u683C\u91CC\u62C9\u5927\u9B54\u738B","discountAmount":0.0000,"id":1204,"orderNo":"291940461143523328","orderPrice":0.1000,"orderStatus":1,"payPrice":0.1000,"payTime":1647412038000,"payType":"weixin","qualifiedCity":"\u5168\u56FD","quantity":1,"refundAccount":null,"refundAmount":null,"refundNotifyTime":null,"refundTime":null,"rightsEndTime":1649952000000,"rightsStartTime":1647446400000,"salePrice":0.10,"skuCode":"202201171927","skuName":"\u3010HTML\u6D4B\u8BD5\u3011\u6559\u7EC3\u89C6\u9891\u6743\u76CA\u5361","skuPrivilegeType":"buick_privilege_type_video","skuPropertyValue":"\u6708\u5361","targetId":64264,"transOrderStatus":5},,{"createTime":1641782671000,"createUserName":"\u6559\u7EC3\u4E8C","discountAmount":0.0000,"id":572,"orderNo":"268329217627127808","orderPrice":0.0100,"orderStatus":2,"payPrice":0.0100,"payTime":1641782681000,"payType":"weixin","qualifiedCity":"\u5168\u56FD","quantity":1,"refundAccount":null,"refundAmount":null,"refundNotifyTime":null,"refundTime":null,"rightsEndTime":1657296000000,"rightsStartTime":1641744000000,"salePrice":0.01,"skuCode":"202201061843","skuName":"\u6559\u7EC3\u89C6\u9891\u6743\u76CA\u5361","skuPrivilegeType":"buick_privilege_type_video","skuPropertyValue":"\u534A\u5E74\u5361","targetId":64841,"transOrderStatus":2}]},"errorCode":0,"message":null,"paging":{"page":1,"total":40},"reqId":"1FU8ODQCR1CU","success":true,"traceId":""}'
payPrice_list = json.loads(data1)
# print(type(payPrice_list))
# print(payPrice_list)
cou = 0
for i in payPrice_list['data']['itemList']:
nub = float(i['payPrice'])
cou = nub+cou
print(i['payPrice'])
print(cou)
思路就是:字符串是个json格式(或转为json格式),然后str转为字典dict,然后循环遍历按照key来取值。你的data是个字典 然后item_list是data的Key ,item_list是个数组,这个里面的数组中的每个元素都是一个字典。因此就是dict多级路径按key取值。import jsondata1 = '{"data":{"itemList":[{"createTime":1647412030000,"createUserName":"\u9999\u683C.
JSON
的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。XML也是一种数据交换格式,为什么没有选择XML呢?因为XML虽然可以作为跨平台的数据交换格式,但是在JS(JavaScript的简写)中处理XML非常不方便,同时XML标记比数据多,增加了交换产生的流量,而
JSON
没有附加的任何标记,在JS中可作为对象处理,所以我们更倾向于选择
JSON
来交换数据。
1,为什么要研究
json
数据的提
取
呢?
在请求一个api接口的时候,返回的是
json
数据,
取
出需要的数据,数据:[123,456,789],由于返回的
json
数据是多级,所以需要按照下面的方法执行,才可以
取
出来所需的数据;
返回的数据格式:
{'responce': {'code': '0', 'categoryResult': {'searchCode': 0, 'IdList': {'totalNum': 6000, 'list': [123,456,789]}, 'searchMsg': '成功'}}}
代码如下:
import
print(data.encode('utf-8').decode('unicode_escape'))#转换成中文输出
(2)如何
取
json
中的
值
;和字典
取值
一样: