python列表写入字典_列表字典:将列表(带有制表符分隔项)写入每个键的不同文件(Python)...

这篇博客讨论了如何使用Python将一个以列表元素为键的字典中的数据写入多个CSV文件,每个键对应一个文件。作者遇到的问题是尝试将列表内容写入文件时遇到了TypeError。解决方案涉及到将列表转换为字符串序列,然后使用writelines方法写入文件。最终目标是创建如'letterA.csv'和'letterB.csv'这样的文件,每个列表项用制表符分隔。
摘要由CSDN通过智能技术生成

我有一个包含列表的字典;密钥基于每个列表中的第一项 . 使用有趣的随机数据集,字典构建如下:

import collections

rand_ls = [["A","bb","cc"],["B","dd","ee"],["A","ff","gg"],["B","hh","ii"]]

d = collections.defaultdict(list)

for item in rand_ls:

d[item[0]].append(item)

print(dict(d))

# {'A': [['A', 'bb', 'cc'], ['A', 'ff', 'gg']], 'B': [['B', 'dd', 'ee'], ['B', 'hh', 'ii']]}

我想将每个密钥中保存的列表写入单独的.csv文件中,每个密钥一个 . 我发现的最接近的解决方案是详细的here,但我无法让它工作 . 我想要的格式:

letterA.csv

A bb cc

A ff gg

letterB.csv

B dd ee

B hh ii

注意: letter{}.csv 是每个密钥的唯一文件;每个列表(在每个键内)都在一个单独的行上,列表中的每个项目都由一个选项卡分隔 .

我的代码是这样的:

for key,lists in d.items():

with open("letter{}.csv".format(key), "w") as f:

f.writelines(lists, delimiter='\t')

它不断抛出错误: "TypeError: writelines() takes no keyword arguments" . 我已经做了一些阅读,我知道writelines()需要一系列字符串,所以不太确定缺少什么 .

基于我在别处读到的内容,代码 open("letter{}.csv".format(key), "w") 应为每个键创建一个唯一的文件,后续行应指示将列表写入相应的文件 .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值