カスタム オブジェクトとして記述されたアプリケーションのリストがあるとします。使用可能なアプリケーションのプールのように機能する 1 つのリストを作成できるように、元のアプリケーション リストのディープ コピーを作成することにしました。アプリケーションを割り当てるには、プールのサブセットをランダムに選択し、元のリストでそれらのアプリケーションを見つけて、それらの情報を更新できるようにします。次に、割り当てられたアプリケーションがプールから削除されます。しかし、何らかの理由で、元のリストにアプリケーションが見つかりません。
list1 = [App1,App2,App3,App4,App5]
pool = copy.deepcopy(list1)
num_apps = rand.randrange(0,5)
random.shuffle(pool)
selected_apps = copy.deepcopy(pool[:num_apps])
for app in selected_apps:
locn = list1.index(app)
print locn
上記のコードは実際には、selected_apps 内の項目が見つからないという ValueError を返します。エラーは、Python にネイティブでないオブジェクトを含むリストのディープ コピーを作成しているという事実によるものですか?