How to access object attributes given a string
Gary Herron
gherron at islandtraining.com
Tue Feb 12 15:35:46 EST 2008
Santiago Romero wrote:
> Hi...
>
> I'm trying to guess how to access attributes of an existing object
> given the attribute name in a string. I mean:
>
> class Object:
> self.x = 12
> self.y = 20
> self.name = "blah"
>
> def ChangeAttribute( object, attribute, value ):
> # Insert here the code for object.attribute = value
> XXXXX
>
> Allowing this kind of calls:
>
> ChangeAttribute( object, "x", 200 )
> ChangeAttribute( object, "name", "my name" )
>
> Thanks.
>
> PS: I need it for a concrete case in a game scripting language I'm
> writing, so that I can call functions like "CHANGE_PLAYER_VALUES( "x",
> 100 )".
>
You want getattr and setattr:
setattr(ob, 'blah', 123)
and
getattr(ob, 'blah')
Gary Herron
More information about the Python-list
mailing list