Python - 将 JSON 对象转换为字典

标签 python json dictionary

我想知道如何使用 JSON 对象的两个值作为键/值对将 json 列表转换为字典。 JSON 看起来像这样:

"test": [
                {
                    "name": "default",
                    "range": "100-1000"
                },
                {
                    "name": "bigger",
                    "range": "1000-10000"
                }
        ]

我基本上希望字典使用名称作为键,范围作为值。所以在这种情况下字典将是 {default:100-1000} {bigger: 1000-10000}

这可能吗?

最佳答案

您可以先使用 json.loads 将 JSON 字符串加载到字典中。接下来,您可以使用字典推导式对其进行后处理:

from json import loads

{ d['name'] : d['range'] for d in loads(json_string)['test'] }

然后我们得到:

>>> { d['name'] : d['range'] for d in loads(json_string)['test'] }
{'bigger': '1000-10000', 'default': '100-1000'}

如果有两个子词典具有相同的名称,则最后一个将存储在结果中。

关于Python - 将 JSON 对象转换为字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45442665/

相关文章:

python - SQL iPython Magic 扩展不会加载

c# - 如何使用 NewtonSoft JsonConvert 反序列化名称中带有破折号 (“-” 的属性?

android - 使android应用程序从rails表中获取数据

java - 如何通过比较值对 HashMap 的条目进行排序,其中每个值都是一个 int[]?

c++ - 内存管理和 C++ 容器类

python - 在夹层中切换数据库后端

python - 填充 NAs : Min of values in group

python - 如何定义和填充列表字典的字典

python - 使用单个元素或列表作为值构建字典

mysql - Code-igniter MySql 中的 Json 数组问题