リストの要素を次のように組み合わせmy_list
ました:
my_combinison = itertools.product(*my_list)
したがって、結合された要素のリストが作成2614234
され、結合リスト内のすべての要素がオブジェクトのスコープであるかどうかを確認したい
list_contries_ok = list({'cities_scope': x, 'status': 1} for x in my_combinison if City.objects.only('country_id', 'city_scope').filter(country_id=CN, city_scope=','.join(x)).prefetch_related('country_id'))
list_contries_ko = list({'cities_scope': x, 'status': 0} for x in my_combinison if not City.objects.only('country_id', 'city_scope').filter(country_id=CN, city_scope=','.join(x)).prefetch_related('country_id'))
list_contries = list_contries_ok.append(list_contries_ko)
私の最後のリストでは、すべてのコンビナゾンを反復し、その status かどうかを言うリストが必要です1 or 0
。
実行に数分かかりました:Sリストのこの巨大な長さで時間を最小限に抑える他の明確な方法はありますか??