比较两个不同文件中的两个元组

时间:2013-07-06 02:18:37

标签: python tuples

我有两个包含元组的文本文件。我正在尝试将每一行与ID匹配(基本上第一个元素是ID)。数据如下:

Input_file_1.txt: 
('126871', 'footest', 'lolo')
('193590', 'nono', 'koko')


Input_file_2.txt: 
('126871', 'mmomo', 'qqlqlqlq')
('193591', 'Severfdfae', 'cofade complet ')



Result_file.txt
('126871', 'mmomo', 'qqlqlqlq')

第一个问题是如何比较两个元组。任何建议或代码示例将受到优雅的赞赏。感谢。

1 个答案:

答案 0 :(得分:0)

要从文件中读取,您可以这样做:

with open('Input_file_1.txt', 'r') as myfile1:
    tuples1 = myfile1.readlines()

with open('Input_file_2.txt', 'r') as myfile2:
    tuples2 = myfile2.readlines()

但是当这些返回字符串时,你必须调用ast.literal_eval将它们转换为元组:

import ast
tuples1 = map(ast.literal_eval, tuples1)
tuples2 = map(ast.literal_eval, tuples2)

然后简单地说:

for tuple2 in tuples2:
    for tuple1 in tuples1:
        if tuple1[0] == tuple2[0]:
            print tuple2

打印哪些:

('126871', 'mmomo', 'qqlqlqlq')