如何解决如何迭代 2 个 JSON 列表混合字典和列表,匹配特定值并打印另一个值
我有 2 个单独的 JSON 列表(带有字典)。 我的目标是,我想遍历 list2“currentUser”,获取值,在 list1 中搜索这些值,并作为输出打印“firstName”的值
例如 liste2:“当前用户”:123, liste1: "id": "123",--> "firstName": "Lisa",
list1 = {
"X-API-KEY": "XyZzahZaksksXXXYYYOOO000","user": {
"email": "Lisa@BLA.com","firstName": "Lisa","id": "123",},"Flat": {
"city": "Munich","country": "2","countryCode": "DEU","currency": "EUR","date": "1587671397","flatmates": [
{
"email": "Lisa@BLA.com",{
"email": "Max@BLA.com","firstName": "Max","id": "124",{
"email": "Hannah@BLA.com","firstName": "Hannah","id": "125",{
"email": "Kai@BLA.com","firstName": "Kai","id": "126",}
],"founderId": "123","id": "99999","image": "","name": "ABC","postCode": "000000",}
}
list2 = [
{
"creationDate": 1587671663,"currentUser": 123,"id": 1717134,"title": "Do this","users": [
124,126
]
},{
"creationDate": 1587671663,"currentUser": 126,"title": "Do that","users": [
123,125
]
},{
"creationDate": 1587671821,"currentUser": 124,"title": "Clean this","users": [
125,122
]
},{
"creationDate": 1587671801,"title": "Clean that",126
]
}
]
我对 python 很陌生。 对我来说有几个头脑问题,因为其中混合了列表和字典,以及如何匹配/搜索 2 个单独的列表/字典的值
到目前为止我得到了什么:迭代“CurrentUser”
for user in liste2:
print(user["currentUser"])
有人有办法吗?
解决方法
在没有其他模块的纯 python 中。
for user in list2:
for mate in list1['Flat']['flatmates']:
if user['currentUser'] == int(mate['id']):
# You found the person now execute this code...
需要注意的一点是,在您的 list1 中,您的室友 id 不是整数,而是字符串。因此,您必须将其转换为 int 才能比较两者。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。