ディレクトリ内のファイルを通過しようとしていて、重複を見つけて削除しようとしています。私はディレクトリに29 000ファイルを持っているので、ブルートフォースを行うには1日以上かかるでしょう。現在のファイルのPythonループ
私は次のとおりであるファイル名を持っている:
「some_file_name」 「いくつかのファイル名」
だから1名にアンダースコアを持ち、他方はダッシュを持ち、時には彼らは2つのまたは3つのスポットです離れて。
どのようにして、内側ループがディレクトリ内の外側ループの位置から始まり、次の10個だけをチェックするようにしますか?
はここに私の強引なコードです:私はあなたの質問から理解して何から
import glob, os
os.chdir("C:/Dir/dir")
for file in glob.glob("*"):
temp = file
temp = temp.replace("-", " ")
temp = temp.replace("_", " ")
#How do I start this loop where file is currently at and continue for the next 10 files
for file2 in glob.glob("*"):
temp2 = file2
temp2 = temp2.replace("-", " ")
temp2 = temp2.replace("_", " ")
if temp == temp2:
os.remove(file2)
あなたはコンテンツまたは類似したことにより、重複するものを見つけたいと思います名前だけ? – Tomalak
データ構造(セットまたはリスト)を使用して、すでに訪れたファイル名を追跡しようとしましたが、2回繰り返す(temp1とtemp2)というよりも、この方法では、各ファイルに1回だけループする必要があります。 – pills