Pythonでforループを使用して一連の(空の)リストを生成しようとしていますが、リストの名前に変数を含める必要があります。例:y0、y1、y2など。理想的には次のようになります。
for a in range (0,16777216):
global y(a)=[]
なぜリストの辞書を作成しないのですか?
y = {}
for a in range (0,16777216):
y[a] = []
簡潔にするためにも: https://stackoverflow.com/a/1747827/884453
y = {a : [] for a in range(0,16777216)}
これがあなたの望むものかどうかはわかりませんが、リストのリストを作成するだけで同じ動作をエミュレートできませんか? に対応your_list[0]
しy0
ます。
たぶん、defaultdictをチェックする必要があります
form collection import defaultdict
# This will lazily create lists on demand
y = defaultdict(list)
また、キーに制約が必要な場合は__getitem__
、次のようなデフォルト関数をオーバーライドします...
def __getitem__(self, item):
if isintance(item, int) and 0 < item < 16777216:
return defaultdict.__getitem__(self, item)
else:
raise KeyError
答えは: しないでください。代わりにy[0]
、y[1]
、 などで変数にアクセスできるようにリストを作成します。情報については、ここで受け入れられた回答を参照してください。