2016-10-04 13 views
0

これは可能でしょうか?属性の文字列を返す、オブジェクトの属性を返す

私が呼び出しされる属性の名前を知っていますかので、私が尋ねる理由は、オブジェクトがかなりの数の属性を持っているので、私は大規模なif/elifブロックを行うことができ、それが醜いと難しいだろう維持する。

+0

変数を辞書に格納する方法の1つ –

答えて

3

可能ですが、これはgetattrの機能です。

def fetch(ob, attr) 
    return getattr(ob, attr) 

明らかに、getattrを直接使用することができます。

+1

もちろん、 'getattr'を' fetch'として再実装するのはむしろ余計です... – deceze

+1

もちろん、私はそれを再実装するつもりはない、 'getattr' = )。ポイントは、わかりやすい例@decezeを示すことでした。 – emihir0

関連する問題