如何从 python 中的字典创建元组列表?
How to create list of tuples from dictionary in python?
我有一本字典,我想在标签之间创建一个元组列表。事实上,我想在 2 个不同标题中的每 2 个常见标签之间建立联系以绘制图表。我该怎么做?
data = [
{
'title': 'title1', 'tags': ['tag1', 'tag2', 'tag3']
},
{
'title': 'title2', 'tags': ['tag1','tag2']
},
{
'title': 'title3', 'tags': ['tag2','tag3']
}
]
我想要的:
edge_list = [(tag1,tag2),(tag2,tag3)]
一种方法是创建一个函数来遍历列表并获取边:
def get_edges_from_list(l):
edges = []
for i,x in enumerate(l[:-1]):
edges.append((x, l[i+1]))
return edges
然后应用,压平(用总和)和drop_duplicates(用集合):
set(sum([get_edges_from_list(x['tags']) for x in data], []))
我有一本字典,我想在标签之间创建一个元组列表。事实上,我想在 2 个不同标题中的每 2 个常见标签之间建立联系以绘制图表。我该怎么做?
data = [
{
'title': 'title1', 'tags': ['tag1', 'tag2', 'tag3']
},
{
'title': 'title2', 'tags': ['tag1','tag2']
},
{
'title': 'title3', 'tags': ['tag2','tag3']
}
]
我想要的:
edge_list = [(tag1,tag2),(tag2,tag3)]
一种方法是创建一个函数来遍历列表并获取边:
def get_edges_from_list(l):
edges = []
for i,x in enumerate(l[:-1]):
edges.append((x, l[i+1]))
return edges
然后应用,压平(用总和)和drop_duplicates(用集合):
set(sum([get_edges_from_list(x['tags']) for x in data], []))