php中文网

如何从嵌套的数据结构中提取特定目标数据?

php中文网

从数据结构中提取目标数据:python 实现

在 python 中,通过指定键值对的方式,可以灵活构建复杂的数据结构。本问答文章将着重探讨如何从给定的示例数据结构中提取特定的目标数据。

示例数据结构

本文基于以下示例数据结构:

  • data1:一个列表,其中每个元素都是一个字典,包含键值对,例如 {'编号a': '123456789'}。
  • data2:一个字典,其中键为数据结构 data1 中 编号c 的值,值为一个包含 编号d 值的列表。

目标数据结构

目标数据结构是一个字典,其中键为 data1 中 编号a 的值,值为一个列表,包含 data2 中与 data1 中 编号c 的值相匹配的 编号d 值。

实现

实现获取目标数据结构的 python 代码如下:

result = {}

for item in data1:
    A, C, D = item['编号A'], item['编号C'], item['编号D']
    if C in data2 and D in data2[C]:
        result.setdefault(A, []).append(D)

代码解析

  • for item in data1:循环遍历 data1 中每个元素(字典)。
  • a, c, d = item['编号a'], item['编号c'], item['编号d']:提取字典中感兴趣的键值对。
  • if c in data2 and d in data2[c]:检查 data2 中是否存在与 c 和 d 相匹配的键值对。
  • result.setdefault(a, []).append(d):如果 a 不存在于 result 字典中,则创建一个空列表,并添加 d 到其中。否则,如果 a 已存在,则将 d 添加到现有列表中。

以上就是如何从嵌套的数据结构中提取特定目标数据?的详细内容,更多请关注php中文网其它相关文章!