使用公共键的值从两个映射创建列表列表

泰耶布尔

有两个不同的地图。一个大于另一个。小地图的键始终是大地图的键的子集。我想获取两个地图都具有的键的值,并使用Groovy功能创建一个列表列表。目的是通过Groovy功能以尽可能少的代码来实现它。

Map big = ['FirstName':'first_name', 'LastName':'last_name', 'FullName':'full_name']
Map small = ['FirstName':'John', 'FullName':'John Williams']

println输出

[[first_name, John], [full_name, John Williams]]
雅洛巴巴
//works even if the small map is not a subset completely
def result = []
big.keySet().intersect(small.keySet()).each {
    result << [big[it], small[it]]
}
assert [['first_name', 'John'], ['full_name', 'John Williams']] == result

编辑:@taiyebur建议的解决方案中添加了两种变体

// VARIATION 2
def result2 = big.subMap(small.keySet()).collect([]) {
    [it.value, small.get(it.key)]
}
assert [['first_name', 'John'], ['full_name', 'John Williams']] == result2

// VARIATION 3
def result3 = small.collect([]) {
    [big[it.key], it.value]
}
assert [['first_name', 'John'], ['full_name', 'John Williams']] == result3

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

创建从两个列表构建的列表列表

来自分类Dev

使用两个列表中的公共信息创建矩阵

来自分类Dev

交换列表列表中的两个值(python)

来自分类Dev

合并两个列表值映射

来自分类Dev

两个列表列表之间的公共元素(嵌套列表的交集)

来自分类Dev

合并两个列表列表

来自分类Dev

平均两个列表列表

来自分类Dev

按公共值 (id) 匹配两个列表

来自分类Dev

使用公共ID密钥合并两个词典列表

来自分类Dev

如何从两个列表中制作列表列表

来自分类Dev

比较两个大型词典,并为它们共有的键创建值列表

来自分类Dev

将两个列表(其中一个是列表列表)映射到字典中

来自分类Dev

列表之间的两个公共元素

来自分类Dev

来自两个列表的字典,包括键的多个值

来自分类Dev

流星:如何使用空格键创建包含两个集合中数据的树形列表?

来自分类Dev

流星:如何使用空格键创建包含两个集合中数据的树形列表?

来自分类Dev

使用列表理解替换列表中的两个值?

来自分类Dev

如何使用linq映射两个列表

来自分类Dev

从两个列表创建嵌套列表

来自分类Dev

尝试从两个列表创建列表

来自分类Dev

连接两个不同大小的Python列表列表

来自分类Dev

从两个列表列表的元素计算

来自分类Dev

使用两个键对列表进行排序

来自分类Dev

传递以映射列表的两个元素

来自分类Dev

映射两个列表而不循环

来自分类Dev

映射两个不同的列表

来自分类Dev

取两个列表列表并返回一个新的列表列表,它是匹配索引位置的值的总和?

来自分类Dev

比较两个 Pandas 数据框并创建值列表

来自分类Dev

当一个键在 python 中应该有两个值时,创建一个包含两个列表的字典

Related 相关文章

热门标签

归档