[英]Reading File into Python Dictionary and then Writing to File
我有一个多行,多列的文本文件。 有一个标题,如果重要的话。 想要将所有数据读入Python字典,然后将其再次写到文件中。 我最终想从两个文件创建两个字典,将它们加入键,然后打印出合并的版本,但是我什至无法正确理解这一部分。 这就是我得到的:
import sys
import csv
from collections import defaultdict
usage = "usage: python Newer.py <project_file> <table_file> <outfile>"
if len(sys.argv) != 4:
print usage
sys.exit(0)
project = open(sys.argv[1], "rb")
table = open(sys.argv[2], "rb")
outfile = open(sys.argv[3], "w")
projectdict = defaultdict(list)
for line in project:
parts = line.strip().split("\t")
first = parts[1]
projectdict[first].append(line)
for key in projectdict:
outfile.write(" ".join(projectdict[first]) + "\n")
我从中得到的是一个文本文件,该文本文件中的相同条目一遍又一遍地重复。
问题在于,无论实际键是什么,您都在第二个循环中每次都在键“ first”处写入值。 我相信这会解决您的问题。
for key in projectdict:
outfile.write(" ".join(projectdict[key]) + "\n")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.