0

我有一个多行、多列的文本文件。如果这很重要,有一个标题。想要将所有数据读入 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")

我从中得到的是一个文本文件,该文本文件中的相同条目一遍又一遍地重复。

4

1 回答 1

0

问题是您每次在第二个循环中都在键“first”处写入值,而不管实际键是什么。我相信这会解决你的问题。

for key in projectdict:
    outfile.write(" ".join(projectdict[key]) + "\n")
于 2014-09-11T21:42:37.827 回答