[英]Accessing list within a dictionary via Python from a JSON file
我是 Python 的新手,需要一些帮助。 我正在尝试使用 Python 从我的 JSON 文件中读取并获取字典中列表的值。
一旦我将 JSON 读入我的程序,我就会:
request body = {
"providerName": "ProviderNameXYZ",
"rateRequestPayments": [
{
"amount": 128.0,
"creditorProfileId": "7539903942457444658",
"debtorProfileId": "2072612712266192555",
"paymentMethodId": "2646780961603748694016",
"currency": "EUR",
"userReference": "INVALID user ref automation single",
"reconciliationId": "343546578753349"
},
{
"amount": 129.0,
"creditorProfileId": "7539903942457444658",
"debtorProfileId": "2072612712266192555",
"paymentMethodId": "2646780961603748694016",
"currency": "EUR",
"userReference": "INVALID user ref automation single",
"reconciliationId": "343546578753340"
}
]
}
rateRequestPayments[0].amount
rateRequestPayments()[0].amount
for k, v in request_body.rateRequestPayments(): print(k, v)
for each in request_body.rateRequestPayments: print(each('amount'))
values = eval(request_body['rateRequestPayments']) print(values[0])
所有这些都以错误告终。 根据下面的第二条评论: request_body['rateRequestPayments'][0]['amount']
这行得通!request_body['rateRequestPayments'][0]['amount']
不适用于此。 不知道如何引用这个。我知道我遗漏了一些简单的东西,但我不确定它是什么。 任何帮助将不胜感激。
Python 非常适合数据科学,并且具有许多适合该工作的功能。 这些功能之一是在数据集中查找数据。 body['rateRequestPayments'][<!WHICH DATA SET YOU WANT TO ACCESS>][<!VALUE YOU WANT TO FIND>]
首先,您需要在requests
和body
之间添加一个下划线,这样它的requests_body = {...}
。
要访问键值对:
requests_body["rateRequestPayments"] #to access the list of two dicts
requests_body["rateRequestPayments"][0] #to access the individual dicts by index
requests_body["rateRequestPayments"][0]["amount"] #to access the value of a particular key (in this case "amount" is the key)
要删除键值对,只需使用del
语句:
del requests_body["rateRequestPayments"][0]["amount"]
这将删除变量requests_body
中的键值对,因此再次尝试访问该键将引发KeyError
错误。
要访问和删除键值对,请使用.pop()
:
value = requests_body["rateRequestPayments"][0].pop("amount")
#value is now 128.0 and the key-value pair is deleted
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.