私は約30万語の単語リストを実行し、そのファイルから正確に999KBのファイルを作成する小さなスクリプトを用意しています。これは完全に動作しますが、すべてが繰り返し実行されるため、すべてのファイルを開くために非常に遅いですが、このスクリプトをまったく同じ動作にすることはできますが、処理時間を短縮するにはどうすればよいでしょうか?大きなファイルから小さなファイルを作成するときの処理時間を短縮する
import os
import hashlib
data = []
count = 1
with open("dicts/included_dicts/dictionaries/000webhost.txt") as a:
for line in a.readlines():
h = hashlib.md5()
h.update(line.strip())
data.append(h.hexdigest() + ": " + line.strip() + "\n")
for item in data:
with open("dicts/included_dicts/rainbowtables/md5_{}.rtc".format(count), "a+") as b:
if os.stat("dicts/included_dicts/rainbowtables/md5_{}.rtc".format(count)).st_size <= 1022162L:
b.write(item)
else:
count += 1
これはうまくいく可能性があります。 – papasmurf
これは動作しますが、同じ動作はしません。ファイルサイズは999KBではなく1003KBです。 – papasmurf
@papasmurfサイズ比較値を小さくしてみてください。 –