Python-在文件列中显示具有重复值的所有行

Python-在文件列中显示具有重复值的所有行,python,Python,我想用整个文件搜索第5列(管道分隔)中的所有值,并显示所有包含相同值的文件。 注:第5列可能包含多个由coma分隔的值(00A0GTE698762350GTE69876) 输入文件:- 01001cee673753 | 5 | 011cb88f714093 | 001c7b203753 | 1cb34f767093 | true | 1 | oldcepool | 345311408905370 01001ffb673751 | 5 | 0100a044e69876 | 001c7b673745

我想用整个文件搜索第5列(管道分隔)中的所有值,并显示所有包含相同值的文件。 注:第5列可能包含多个由coma分隔的值(00A0GTE698762350GTE69876)

输入文件:-
01001cee673753 | 5 | 011cb88f714093 | 001c7b203753 | 1cb34f767093 | true | 1 | oldcepool | 345311408905370
01001ffb673751 | 5 | 0100a044e69876 | 001c7b673745 | 00A0GTE698762350GTE69876 |真| 1 |旧CPEPOOL | 13434003134731
010016cww7f62f | 5 | 017422cf6e565b | 0016gtf7f62f | 10gt828f2a13 | true | 3 | oldcepool | 141198213475041

我已经在网上尝试过这段代码,但它给了我错误

错误:
文件“a.py”,第5行
以open('deviceBinding.org','r')作为我的文件:

请帮我做这个

这个问题被标记为
perl
。您正在寻找
perl
解决方案吗?给出输入和输出的示例以帮助您给出答案是很有用的。您在哪里尝试过这段代码?发布回溯。只是这条错误线并不能解释一切。当您读取文件时,请添加一个示例,以便我们可以复制您的错误并找到解决方案。@Sobrique:i使用的文件包含大量数据,因此,使用shell脚本进行搜索需要花费太长的时间。为了减少搜索时间,我更喜欢用Python或perl进行搜索。我在Linux机器上尝试了这段代码。这个问题被标记为
perl
。您正在寻找
perl
解决方案吗?给出输入和输出的示例以帮助您给出答案是很有用的。您在哪里尝试过这段代码?发布回溯。只是这条错误线并不能解释一切。当您读取文件时,请添加一个示例,以便我们可以复制您的错误并找到解决方案。@Sobrique:i使用的文件包含大量数据,因此使用shell脚本进行搜索花费的时间太长。为了减少搜索时间,我更喜欢使用Python或perl。我在Linux机器上尝试过此代码
#!/usr/bin/env python
entries = []
duplicate_entries = []

with open('deviceBinding.org', 'r') as my_file:
    for line in my_file:
        columns = line.strip().split(',')
        if columns[2] not in entries:
            entries.append(columns[2])
        else:
           duplicate_entries.append(columns[2]) 

if len(duplicate_entries) > 0:
    with open('out.txt', 'w') as out_file:
        with open('deviceBinding.org', 'r') as my_file:
            for line in my_file:
                columns = line.strip().split(',')
                if columns[2] in duplicate_entries:
                    print line.strip()
                    out_file.write(line)
else:
    print "No repetitions"