问题:
如果我需要展开一个列表列表,我会使用类似于列表理解的方法将其展平到单个列表中:
[item for sublist in l for item in sublist]
我有一个字典,其中一些值是列表列表,在导入到Pandas之前,我需要将这些值展平到单个列表中。在
^{pr2}$
所需的数据结构:
defaultdict(list,
{'object network fake-1': [' host 10.0.0.1'],
'object network fake12': [' host 10.0.0.12'],
'object network fake2': [' host 10.0.0.2 '],
'object network fake3': [' host 10.0.0.0 255.255.255.0'],
'object network fake4': [' host 10.0.0.4'],
'object network fake5': [' host 10.0.0.5'],
'object-group network prt-apps': [' network-object object fake-1',
' network-object object fake2',
' network-object object fake3',
' network-object object fake121'],
'object-group network prt-apps2': [' network-object object fake4',
' group-object prt-apps',
' network-object object fake-1',
' network-object object fake2',
' network-object object fake3',
' network-object object fake121'],
'object-group network prt-apps3': [' network-object object fake5',
' group-object prt-apps2',
' network-object object fake4',
' group-object prt-apps',
' network-object object fake-1',
' network-object object fake2',
' network-object object fake3',
' network-object object fake121']})
我已经为此搜索过了,但没有看到可以使用的示例。有没有一种简单的方法可以在字典值内展平这些“列表”容器?在
这是我在熊猫身上消费时处理其他字典结构的方法,但上面的第一个字典不适用:
pd.DataFrame(dict([ (k,pd.Series(v)) for k,v in asa.iteritems() ]))
以下是我理解的工作(对于您的特定示例,这依赖于list
+
行为):在您的示例中,从
^{pr2}$dict
开始:你的结局是
作为原帖子的后续报道。我设法解决了这个问题,并在以下生成器函数的帮助下将字典中的列表展平:
取自here:
在字典中使用它,如下所示:
^{pr2}$请注意,Python3的这个函数还有另一个版本,可以通过上面的链接找到。在
相关问题 更多 >
编程相关推荐