On Sun, 10 Feb 2008 08:38:46 +0900
Kazuhiro NISHIYAMA <zn@...> さんwrote:
> At Tue, 5 Feb 2008 13:11:39 +0900 (JST),
> 機械伯爵 wrote:
> >
> > > var1
> > > var2
> > > var3
> > > ...
> > >
> > > という変数があって、
> > > それとは別にx と i という変数があったときに
> > > x = 'var'
> > > i = 1
> > > のようなときに、var1なる変数の値を取り出したいのだけどどうすればいいですか?
> > > ってのが定期的にでてきます。
> > >
> > > でまあPerlならシンボリックリファレンス、PHPなら可変変数(だっけ?)という
> > > からくりを使えば割合簡単にできたりするわけですが、
> >
> > Pythonなら、eval("var" + str(1))かなぁ……
>
> vars()["var" + str(1)]またはlocals()["var" + str(1)]では
> ないんでしょうか?
>
>
> --
> |ZnZ(ゼット エヌ ゼット)
> |西山和広(Kazuhiro NISHIYAMA)
試してみました。
-----^ testarray.py
var1 = 1
var2 = 2
var3 = 3
x = 'var'
i = 1
print eval("var" + str(1))
print vars()["var" + str(1)]
print locals()["var" + str(1)]
-----$
C:\Scripts\Python>python testarray.py
1
1
1
C:\Scripts\Python>
藤岡 和夫
kazuf@...
日曜プログラマのひとりごと http://homepage1.nifty.com/kazuf/renewal.html