5

ループ内にいくつかの配列を作成し、さらにそれらにアクセスしようとしています。ループ内でそれらを変更して印刷できる理由がわかりませんが、ループ外では変数が存在しないと表示されます。

for i in range (0,3):
    a_i=[i]
    a_i.append(i+1)
    print a_i
print a_1

問題を解決する方法について提案してくれる人はいますか?

4

1 に答える 1

7

変数名は、そのまま使用されるトークンです。つまり、変数は他の変数名内に展開されません。

ifa_iと等しいとは期待できません。a_1i == 1

そのためには、配列または辞書を使用します。

a = {}
for i in range (0,3):
    a[i] = [i]
    a[i].append(i+1)
    print a[i]
print a
print a[1]
于 2012-11-18T15:16:50.027 に答える