Python:从 'list' 的 {(tuples): value} 字典写入 csv 文件

标签 python list csv dictionary tuples

大家好。

我有一个 [(tuple): value] 字典作为列表中的元素,如下所示:

lst = [{('unit1', 'test1'): 11, ('unit1','test2'): 12}, {('unit2','test1'): 13, ('unit2','test2'):14 }]

testnames = ['test1','test2']
unitnames = ['unit1','unit2']

如何使用以下输出写入 csv 文件?

单元名称,test1,test2

单元1、11、12

单元2、13、14

谢谢。

最佳答案

首先,扁平化结构。

units = collections.defaultdict(lambda: collections.defaultdict(lambda: float('-inf')))
for (u, t), r in lst.iteritems():
  units[u][t] = r
table = [(u, t['test1'], t['test2']) for (u, t) in units.iteritems()]

然后使用 csv写出 CSV 文件。

关于Python:从 'list' 的 {(tuples): value} 字典写入 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5432109/

相关文章:

python - 如何在C++中使用 "in"关键字

python - Pandas drop 函数在 for 循环中不起作用?

python - 使用 python curses 逐页滚动或逐行滚动

C#/Xamarin 列表清空自身

java - 在 java 中将 CSV 复制到数组时遇到问题

python - 在 Django 中更改模型会导致数据库损坏?

python - 为成对的名称分配相同的 ID

list - 如何在 Rust 中创建通用类型结构的集合?

php - 在 Laravel 中验证 CSV 文件

python - 将列表的字符串表示形式转换为数据框列中的列表