
No.3ベストアンサー
- 回答日時:
exec関数を使って文字列をコードとして実行すれば、それっぽいことができるように思います。
あまりいい例を思いつかないですが、以下のような感じでしょうか?
aaa = "hensu_name"
src = aaa + " = 'hello'" #srcの中身は、"hensu_name = 'hello'"
exec(src)
print hensu_name #hello が表示される
src = "print " + aaa #srcの中身は、"print hensu_name"
exec(src) #hello が表示される
ただ、No.1の方がおっしゃっているように、あまりお勧めな方法ではありません。
文字列をコードとして実行してしまうので、少々危険な側面もあります。
悪意のあるコードを含む文字列を実行してしまうとか…。
No.2
- 回答日時:
変数aaaに入れた文字列を使って、なにかの変数にアクセスしたいということでしょうか?
Pythonの名前空間は基本的に辞書でできています。
操作したい変数が属する名前空間のオブジェクトを取得すれば、アクセスできます。
これはローカル変数を操作する例です。
(インデントなしの一番外側lのレベルで実行しているので、locals()もglobals()も同じになってしまいます。locals()、globals()については、ドキュメントを見てください)
>>> aaa = 'hensu_name'
>>> ns = locals() #globals()でも変わりません
>>> ns[aaa] = 'value'
>>> hensu_name
'value'
こちらは、クラスのインスタンスにメンバ変数を追加してみた例です。
>>> aaa = 'hensu_name'
>>> class A(object): pass
...
>>> obj = A()
>>> obj.__dict__[aaa] = 'hoge'
>>> obj.hensu_name
'hoge'
No.1
- 回答日時:
一応、eval を使う、という手段はありますが、あまりお勧めできません。
○辞書を使う
variable['hensu_name'] = 123
○属性だったら、
http://docs.python.jp/2/library/functions.html#g …
http://docs.python.jp/2/library/functions.html#s …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Application.ScreenUpdating = ...
-
VBAでPDFのコピーとリネームを...
-
実行時エラー 3020の対策
-
vbaでxmlからNodeListでデータ...
-
VB6のLSETをVB2005で実現するに...
-
C言語 当選者
-
構造体の変数の値を、動的に取...
-
vscode 文字化け
-
FindFirst を複数条件で検索
-
What could be kanji of the Ja...
-
<SELECT>タグの折り返し
-
JSONで文字列が長い時
-
Use of uninitialized value ---
-
メモリをアドレスを直接指定し...
-
メールアドレスの存在のチェッ...
-
SELECT OPTIONの中身をコピペ...
-
ウェブスクレイピング Python B...
-
formで特定のinputを送信しない...
-
I2C接続のLCDディスプレイを使う
-
プロトタイプ宣言のワーニング...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Application.ScreenUpdating = ...
-
実行時エラー 3020の対策
-
FindFirst を複数条件で検索
-
[python] 文字列を変数名として...
-
ACCESS テキストボックスを隙...
-
vbaでxmlからNodeListでデータ...
-
VBAでPDFのコピーとリネームを...
-
コンボボックスのtag情報の取得...
-
「*:*」って何を意味するのでし...
-
構造体の各データの表示につい...
-
UWSC:ポップアップウインドウ...
-
MSXMLでの属性の存在確認法
-
【メモリ不足で落ちる(python)】
-
2つのpythonがあって、一方で...
-
構造体の変数の値を、動的に取...
-
VB6のLSETをVB2005で実現するに...
-
文字列配列をメンバにもつ構造...
-
VBAで特殊文字を出力したい
-
c++の構造体について
-
C++ APIについて エラーコード...
おすすめ情報