【发布时间】:2018-11-28 03:20:48
【问题描述】:
基本上我会有一堆小字典,像这样:
dictionary_list = [
{"eight": "yes", "queen": "yes", "we": "yes", "eighteen": "yes"},
{"nine": "yes", "king": "yes","we": "yes", "nineteen": "yes"}
]
然后我有一个 csv 文件,其中包含一大堆列,标题中也包含单词,如下所示: 可能有 500 列,每列有 1 个单词,我不知道列出现的顺序。但是,我知道我的小词典中的任何单词都应该与列中的单词匹配。
我想遍历文件的标题(首先跳过 5 个列标题),每次查看是否可以在字典中找到标题名称,如果可以,则将值添加到该行中,如果没有,加一个“否”。这将逐行完成,其中每一行用于一个小字典。对该文件使用上述字典的结果将是:
到目前为止,我已经能够尝试以下不起作用的方法:
f = open("file.csv", "r")
writer = csv.DictWriter(f)
for dict in dictionary_list: # this is the collection of little dictionaries
# do some other stuff
for r in writer:
#not sure how to skip 10 columns here. next() seems to work on rows
for col in r:
if col in dict.keys():
writer.writerow(dict.values())
else:
writer.writerow("no")
【问题讨论】:
-
您应该显示您使用的所有额外文件。
-
如果有帮助,添加文件的 sn-p 图片
-
不要将图像用于数据。粘贴 .csv 中的文本数据,因此如果我们想复制,我们可以剪切粘贴。
标签: python csv dictionary file-io