如何将`key:list`对的dict转换为元组列表?

转换l1为的最佳方法是什么l2?


 l1 = {1: [],  

       2: ["tag1", "tag2"],

       3: ["tag2"])


 l2 = [(2, "tag1"), 

       (2, "tag2"),

       (3, "tag2")]

我们试图找到所有的键值组合,但忽略空的。


例如


1: [] -> 没有(因为没有对)


2: ["tag1", "tag2"]-> [(2, "tag1"), (2, "tag2")]


3: ["tag2"] -> [(3, "tag2")]


然后将所有这些合并到一个列表中。


回首忆惘然
浏览 168回答 2
2回答

开心每一天1111

你是那个意思吗?[(key, value) for key, values in l1.items() for value in values]这导致[(2, 'tag1'), (2, 'tag2'), (3, 'tag2')](你'tag3'是哪里人?)

POPMUISE

这应该可以完成工作;l1 = {1: [],        2: ["tag1", "tag2"],      3: ["tag2"])l2 = []for key, values in l1.items():    new_values = []    for value in values:        new_values.append(value)    l2.append(tuple(new_values))>>> l2[(2, "tag1"), (2, "tag2"), (3, "tag2")]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python