python - 如何将字典列表写入具有多个值的 CSV

标签 python csv dictionary

我在“my_list”中有一个字典列表,如下所示:

my_list=[{'Id': '100', 'A': [val1, val2], 'B': [val3, val4], 'C': [val5,val6]}, 
         {'Id': '200', 'A': [val7, val8], 'B': [val9, val10], 'C': 
         [val11,val12],
         {'Id': '300', 'A': [val13, val14], 'B': [val15, val16], 'C':   
         [val17,val18]}]

我想将此列表写入 CSV 文件,如下所示:

ID,  A,     AA,    B,     BB,    C,     CC
100, val1,  val2,  val3,  val4,  val5,  val6
200, val7,  val8,  val9,  val10, val11, val12
300, val13, val14, val15, val16, val17, val18   

有谁知道我该如何处理吗?

最佳答案

Tablib应该可以解决问题

我将示例保留在他们的首页上(您可以调整为 .csv 格式):

>>> data = tablib.Dataset(headers=['First Name', 'Last Name', 'Age'])
>>> for i in [('Kenneth', 'Reitz', 22), ('Bessie', 'Monke', 21)]:
...     data.append(i)


>>> print(data.export('json'))
[{"Last Name": "Reitz", "First Name": "Kenneth", "Age": 22}, {"Last Name": "Monke", "First Name": "Bessie", "Age": 21}]

>>> print(data.export('yaml'))
- {Age: 22, First Name: Kenneth, Last Name: Reitz}
- {Age: 21, First Name: Bessie, Last Name: Monke}

>>> data.export('xlsx')
<censored binary data>

>>> data.export('df')
  First Name Last Name  Age
0    Kenneth     Reitz   22
1     Bessie     Monke   21

关于python - 如何将字典列表写入具有多个值的 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46468840/

相关文章:

sql - 导入 csv 数据时去除第一个空格

python - 使用字典绘制条形图并使用另一个字典为每个条形指定指定的颜色

意外标记附近的 Python 语法错误

python - PYQT5:使用for循环或其他东西创建许多相同类型的QSlider

python - Numpy:智能矩阵乘法到稀疏结果矩阵

Haskell 计算满足查询的列表的元素

python - 多个if和elif的区别?

php - 确定所有 CSV 列的最小值和最大值

python - 在函数内修改字典

java - jackson :如何反序列化嵌套的自定义 map 和列表?