Code:
with open('ip_in', 'r') as ip_in:
with open('ip_out', 'w') as ip_out:
s = set()
for ip in ip_in:
h = hash(ip.rstrip())
if h not in s:
ip_out.write(ip)
s.add(h)
Die Einrückung wird bestimmt zerstört. Da ich nicht weiß, wie groß die Dateien sind, wird nur der Hash in der Set-Datenstruktur gespeichert.