繁体   English   中英

将文件读入Python字典,然后写入文件

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM