2016-08-18 13 views
-3

は、だから私は、内部のこのようになりますテキストファイルがあります。テキストファイルの重複リンクを削除するにはどうすればよいですか?

http://example.pl/folder/this_same1.avi 
http://example.pl/folder/this_same1.avi 
http://example.pl/folder/this_same2.avi 
http://example.pl/folder/this_same2.avi 
http://example.pl/folder/this_same3.avi 
http://example.pl/folder/this_same3.avi 

をそして私はすべての重複リンクを削除したいです。出力ファイルに は次のようになります。

links = set() 
with open('file.txt', 'r') as fp: 
    for line in fp.readlines(): 
     links.add(line) 

はその後、ファイルに書き戻すことができます:

http://example.pl/folder/this_same1.avi 
http://example.pl/folder/this_same2.avi 
http://example.pl/folder/this_same3.avi 
+0

'cat/path/to/file | sort -u' –

+0

@NehalJWani OPがLinuxを使用していると仮定します... – DeepSpace

+1

何か試しましたか? SOはコード作成サービスではありません。 – DeepSpace

答えて

0

この構造が一貫しており、順序が重要である場合:

links = fp.readlines()[::2] 

構造が一貫していない、と順序が重要な場合:

links = [] 
for line in fp.readlines(): 
    if line not in links: 
     links.append(line) 

次に、ファイルに書き込みます。

1

ああ、私は私の答え改善しました

with open('file.txt', 'wb') as fp: 
    for line in links: 
     fp.write(line) 

テストを自分で..

+0

明示的な 'for'ループは不要です:' set(fp.readlines()) 'が行います。また、これにより、行の順序が変更される可能性があります(おそらく)。 OPはそれでOKかもしれないし、そうでないかもしれない。 – DeepSpace

+0

絶対に右.. – Eric

関連する問題