Python字典列表字段重组形成新的字典转载

原创
小哥 3年前 (2022-10-17) 阅读数 48 #大杂烩

我最近遇到了一个需求,需要重新组织词典列表中的字段,以形成一个新词典。让我们举一个例子。

l1 = [{"x": 22, "y": 22, "demand": 18},
        {"x": 36, "y": 26, "demand": 26},
        {"x": 21, "y": 45, "demand": 11}]

# 要把其中x y作为Key, demand作为value形成了以下词典。下面这本词典已经形成了。以下是一本词典。
d1 = {(22, 22): 18,
     (36, 26): 26,
     (21, 45): 11}

我们大多数人应该知道,我们大多数人应该知道,我们大多数人应该知道Python存在列表生成器存在列表生成器存在列表生成器( list generator )是这样的,是这样的

a = [i for i in range(5)]
# result: a = [0, 1, 2, 3, 4]

其实,Python还有一个字典生成器,它只需将上面的方括号更改为大括号,前面的示例可以在一句话中实现为

d1 = {(it[x], it[y]):it[demand] for it in l1}

转载于:https://www.cnblogs.com/ben-future/p/11246393.html

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除

热门