pythonでforループ中に自動でリストの名前を変えたい


forループの中で数字に対応した名前のリストを生成したいです。  
例えば

[code]

    for i in range(10):
        for j in range(20):
            list_i_j=[i,j]
    
[/code]

`list_i_j` に対応する数字が入るようなものです。それに代わる代替案でも大丈夫です。

よろしくお願いします。




文字列処理で変数名を組み立てる事が必要な場面は、あまり無いと思います。  
配列や連想配列が使えないshスクリプトなどでは使うかもしれませんが。

質問の例ですと `i` も `j` も連続しているのでリストのリスト（のリスト）を使いたいです。

[code]

    a_list = []
    for i in range(10):
        child_list = []
        a_list.append(child_list)
        for j in range(20):
            child_list.append([i, j])
    
    # 内包表記バージョン
    a_list = [[[i, j] for j in range(20)] for i in range(10)]
    
    # >>> a_list[1][2]
    # [1, 2]
    
[/code]

リストが適さず、`"1_2"` の様な文字列から値を引きたい事情があるのでしたら、辞書を使うのがよさそうです。

[code]

    a_dic = {}
    for i in range(10):
        for j in range(20):
            a_dic[str(i) + "_" + str(j)] = [i,j]
    
    # 内包表記バージョン
    a_dic = {str(i) + "_" + str(j) : [i, j] for i in range(10) for j in range(20)}
    
    # >>> a_dic["1_2"]
    # [1, 2]
    
[/code]

