Optimieren des Suchens und Ersetzens über große Dateien in Python

Ich bin einVölliger Anfänge zu Python oder einer anderen seriösen Programmiersprache. Ich habe endlich einen Prototyp-Code zum Laufen bekommen, aber ich denke, er wird zu langsam sein.

Mein Ziel ist es, einige chinesische Zeichen in allen Dateien (es handelt sich um CSV-Zeichen) in einem Verzeichnis mit Ganzzahlen zu finden und zu ersetzen, wie in einer CSV-Datei, die ich habe. Die Dateien sind nach Jahr und Monat nummeriert, z. B. 2000-01.csv, und sind die einzigen Dateien in diesem Verzeichnis.

Ich werde ungefähr 25 Dateien mit einer Größe von jeweils 500 MB (und ungefähr einer Million Zeilen) durchlaufen. Das Wörterbuch, das ich verwenden werde, wird ungefähr 300 Elemente haben und ich werde Unicode (chinesisches Zeichen) in Ganzzahlen ändern. Ich habe es mit einem Testlauf versucht und unter der Annahme, dass alles linear skaliert wird (?), Sieht es so aus, als würde es ungefähr eine Woche dauern, bis dies ausgeführt wird.

Danke im Voraus. Hier ist mein Code (nicht lachen!):

# -*- coding: utf-8 -*-

import os, codecs

dir = "C:/Users/Roy/Desktop/test/"

Dict = {'hello' : 'good', 'world' : 'bad'}

for dirs, subdirs, files in os.walk(dir):
    for file in files:
        inFile = codecs.open(dir + file, "r", "utf-8")
        inFileStr = inFile.read()
        inFile.close()
        inFile = codecs.open(dir + file, "w", "utf-8")
        for key in Dict:
            inFileStr = inFileStr.replace(key, Dict[key])
        inFile.write(inFileStr)
        inFile.close()