Wie löst man das memory error in Python

Beschäftige ich mich mit mehreren großen txt-Datei, jeder von Ihnen hat über 8000000 Linien. Ein kurzes Beispiel die Zeilen:

usedfor zipper fasten_coat
usedfor zipper fasten_jacket
usedfor zipper fasten_pant
usedfor your_foot walk
atlocation camera cupboard
atlocation camera drawer
atlocation camera house
relatedto more plenty

Den code zu speichern Sie Sie in einem Wörterbuch ist:

dicCSK = collections.defaultdict(list)
for line in finCSK:
    line=line.strip('\n')
    try:
        r, c1, c2 = line.split(" ")
    except ValueError:
        print line
    dicCSK[c1].append(r+" "+c2)

Es gut läuft in der ersten txt-Datei, aber wenn es läuft auf die zweite txt-Datei, ich bekam eine Fehlermeldung MemoryError.

Ich bin mit Windows 7 64bit mit python 2.7 32bit, intel i5 cpu mit 8 GB Speicher. Wie kann ich das problem lösen?

Weiter zu erklären:
Ich habe vier große Dateien, jede Datei enthält verschiedene Informationen, die für viele Unternehmen. Zum Beispiel, ich möchte finden Sie alle Informationen für cat, dessen Vater-Knoten animal und seine Kind-Knoten persian cat und so weiter. Also mein Programm Lesen Sie zuerst alle txt-Dateien in das Wörterbuch, dann scan ich alle Wörterbücher, um Informationen für cat und seinen Vater und seinen Kindern.

Ist das dein echter code? ich denke nicht. Zum Beispiel, was ist finCSK?
Warum brauchen Sie diese Daten in einem Wörterbuch? Legen Sie Sie in eine Datenbank oder einen ähnlichen Speicher, können Sie Abfrage.
Ich Vernachlässigung der input-Prozess in meiner Frage, ich habe gelesen Dateien, und fin öffnet die Datei
Ich muss mehr tun, nachdem ich gelesen habe, Sie im Wörterbuch. Ich brauche Sie also in meinem code.
Dennoch sehe ich nicht alles, was in Ihrer Beschreibung erfordert dies geschieht im Arbeitsspeicher.

InformationsquelleAutor flyingmouse | 2016-05-20

Schreibe einen Kommentar