Оптимизация поиска и замены больших файлов в Python

Яполный новичок на Python или любой серьезный язык программирования в этом отношении. Я наконец получил прототип кода для работы, но я думаю, что он будет слишком медленным.

Моя цель - найти и заменить некоторые китайские иероглифы во всех файлах (они являются csv) в каталоге с целыми числами согласно имеющемуся у меня csv-файлу. Файлы хорошо нумеруются по году-месяцу, например 2000-01.csv, и будут единственными файлами в этом каталоге.

Я буду перебирать около 25 файлов по 500 МБ каждый (и около миллиона строк). Словарь, который я буду использовать, будет иметь около 300 элементов, и я буду менять юникод (китайский символ) на целые числа. Я попытался выполнить тестовый прогон, и, предполагая, что все масштабируется линейно (?), Похоже, что для его запуска потребуется около недели.

Заранее спасибо. Вот мой код (не смейтесь!):

# -*- 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()

Ответы на вопрос(4)

Ваш ответ на вопрос