use str as variable name
Fredrik Lundh
fredrik at pythonware.com
Thu Sep 4 03:36:29 EDT 2008
Mathieu Prevot wrote:
> I have a program that take a word as argument, and I would like to
> link this word to a class variable.
>
> eg.
> class foo():
> width = 10
> height = 20
>
> a=foo()
> arg='height'
> a.__argname__= new_value
>
> rather than :
>
> if arg == 'height':
> a.height = new_value
> elif arg == 'width';
> a.width = new_value
>
> Can I do this with python ? How ?
assuming you mean "instance variable" ("a" is an instance of the class
"foo"), you can use setattr:
a = foo()
arg = 'height'
setattr(a, arg, new_value)
</F>
More information about the Python-list
mailing list