2016-03-24 5 views
0

Ich bin irgendwie auf dieses Problem fest! Ich habe eine riesige Textdatei (3 Millionen Zeilen oder so) und ich muss alle Zeilen entfernen, die mehr als eine Tilde enthalten. Könnte jemand so freundlich sein, mir zu helfen! Bitte und Danke .Python entfernen Zeilen, die mehr als eine Tilde enthalten

Hier ist, was ich bisher:

import re 

f_in = 'C:\\Users\\John\\Documents\\Python\\Pagelinks\\pagelinkSample_10K_cleaned2.txt' 

f_out = 'C:\\Users\\John\\Documents\\Python\\Pagelinks\\pagelinkSample_10K_cleaned3.txt' 

with open(f_in, 'r') as fin: 

     with open(f_out, 'w') as fout: 

       for line in fin: 

hier stecken, ich denke, wenn Zeilenzahl für Tilde mehr als eine Löschleitung enthält?

Danke!

+2

Warum Python verwenden, wenn 'grep -v '~~'' den Job erledigt? –

Antwort

3
for line in fin: 
    if line.count('~') < 2: 
     fout.write(line) 
+3

Vorschlag: 'if line.count ('~') <2:', und entfernen Sie die 'continue'. –

+0

Ja, viel besser. –