比较和提取两个相似文件中的数据

时间:2014-04-16 11:41:09

标签: python python-3.x

我有以下问题:在文件A和B中,我有一个名单和出生日期列表,格式为Joe Bloggs 01/01/1901。

文件A具有所有正确的出生日期。我一直在尝试用Python编写可以运行文件B的代码并比较出生的名称和日期,如果找到重复删除它,则留下所有不正确的条目。

这段代码创建了一个文件,其中包含了我可以使用的所有不正确的名称和DOB,但我想要使用正确的DOB完全相同。有什么想法吗?

def build_set(filename):
    found = set()    

    with open(filename) as f:
        for line in f:
            found.add(tuple(sorted(line.split()[:3])))

    return found

set_more = build_set('Incorrect.txt')
set_del = build_set('Correct.txt')

with open('results.txt', 'w') as out_file:
    for res in (set_more - set_del):  
        out_file.write(" ".join(res) + "\n")

1 个答案:

答案 0 :(得分:1)

如果您希望新的fie只包含正确的DOB,为什么不再重新设置差异?

with open('results.txt', 'w') as out_file:
    for res in (set_del - (set_more - set_del)):  
        out_file.write(" ".join(res) + "\n")

或者您正在寻找其他东西吗?