Felix Hebeler a écrit :
Hi all,
I am doing some Python scripting for a while, but I'm not too deep into it yet. So I have a problem I can't solve.


I need to call an object attribute:

value = object.attrName[0]

the problem is, that the attribute name can only be specified at runtime.

So what I have is something like

 >>> attrName = sys.argv[1]
 >>> attrName
'cellsize'

and I need to pass it on so I can call

value = object.cellsize[0]


Can this be done using Python?

Thanks for any hints

Cheers
Felix

The builtin "setattr" is your friend. "object" is now a reserved (builtin) name, use "objekt" instead.

class Foo(object):
    pass
objekt = Foo()
attrName = sys.argv[1]
values = ['foo', 'bar', 'whatever']
setattr(objekt, attrName, values)

HTH

--
Gilles
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to