python - 通过在 Python 中的字典列表中搜索另一个值来返回一个值

标签 python python-3.x

所以我有这个 json 文件:

{
    "participantIdentities": [
        {
            "player": {
                "summonerName": "C9 Kev",
                "summonerId": "scIpmmwEKJpPGi2DZLylEbmhrSjfkBMcoxYyeamiUc2tUu8",
                "accountId": "i9_bugepKjVwgGwi9HoTAxp_vhTQh9KU3pl9TZYFcyb9xQ"
            },
            "participantId": 1
        },
        {
            "player": {
                "summonerName": "R0YALEwCHEESE",
                "summonerId": "CT8AMcHE9bD6URaW39rndvRWI0mntBfjbwy9VkC7DF6L2ao",
                "accountId": "Wqe588a6pGsdG-UB1LYRam_kOD8gcBMGT53O6fOYQSmN7rE"
            },
            "participantId": 2
        }
    ]
}

这是我想要完成的:

搜索预定的“summonerName”值并返回以下“participantId”。

例如: 我搜索“C9 Kev”并返回“1”(“participantId”)。

最佳答案

您可以使用 for 循环遍历 participantIdentities 键下的子列表,并输出 participantId 键的值,如果player 键的 summonerName 键等于您要查找的内容:

for participant in d['participantIdentities']:
    if participant['player']['summonerName'] == 'C9 Kev':
        print(participant['participantId'])

因此给定:

d = {
    "participantIdentities": [
        {
            "player": {
                "summonerName": "C9 Kev",
                "summonerId": "scIpmmwEKJpPGi2DZLylEbmhrSjfkBMcoxYyeamiUc2tUu8",
                "accountId": "i9_bugepKjVwgGwi9HoTAxp_vhTQh9KU3pl9TZYFcyb9xQ"
            },
            "participantId": 1
        },
        {
            "player": {
                "summonerName": "R0YALEwCHEESE",
                "summonerId": "CT8AMcHE9bD6URaW39rndvRWI0mntBfjbwy9VkC7DF6L2ao",
                "accountId": "Wqe588a6pGsdG-UB1LYRam_kOD8gcBMGT53O6fOYQSmN7rE"
            },
            "participantId": 2
        }
    ]
}

输出:1

关于python - 通过在 Python 中的字典列表中搜索另一个值来返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55131598/

相关文章:

Python 合并两个 csv 文件 python

python - Pycharm不显示数据库表

python - python 脚本的采购输出因管道异常异常而失败

python - 如果列名中有空格,我该如何编写此语法?

python - 在 matplotlib 中更改填充颜色

python - 在 PySpark 中提取特定行

Python tornado OS 错误 24 打开的文件太多

python - 如何替换 SQLAlchemy 映射器已弃用的 "order_by"选项?

python - 如何屏蔽线以下的点?

python-3.x - python :3. 8-alpine3.11 中的 Scipy 错误 - 未找到 lapack/blas 资源