要素を持つ巨大なテーブル データ (またはレコード配列) があります。
tbdata[i]['a'], tbdata[i]['b'], tbdata[i]['c']
これらはすべて整数で、i
0 から 100 万 (テーブルのサイズ) までの乱数です。
Name
また、要素が (変更された) などのファイルのすべての名前 (合計 900 名'/Users/Desktop/Data/spe-3588-55184-0228.jpg'
) であり、すべて 3 つの数字を含むと呼ばれるリストもあります。
tbdata
ここで、上記の要素がすべて list の名前の 3 つの数字と一致するデータを my から選択したいと思いますName
。最初に書いたコードは次のとおりです。
Data = []
for k in range(0, len(tbdata)):
for i in range(0, len(NameA5)):
if Name[i][43:47] == str(tbdata[k]['a']) and\
Name[i][48:53] == str(tbdata[k]['b']) and\
Name[i][55:58] == str(tbdata[k]['c']):
Data.append(tbdata[k])
データのサイズが巨大であるか、アルゴリズムが遅すぎるため、Python は一晩中実行されましたが、まだ完了していません...そのようなタスクを完了するための最速の方法は何ですか? ありがとう!