for file in files: fname = os.path.join(dir, file) inFile = codecs.open(fname, "r", "utf-8") outFile = codecs.open(fname + ".new", "w", "utf-8") for line in inFile: newline = do_replacements_on(line) outFile.write(newline) inFile.close() outFile.close() os.rename(fname + ".new", fname)