convert string literal to object attribute
def getAttributeForProperty(self,rollnumber,attribute): # attribute have the value _ward ''' If year is null then use current year. Returns the value of the attribute for the given roll number ''' print 'Searching for attribute', attribute for index, i in enumerate(self._aa): if (rollnumber == i._roll_number) and ( hasattr(i,attribute) ) : print index,i.attribute (COMPILER ERROR HERE) return i.attribute return print "\n" return i want i.attribute to be treated as i._ward I get a compile error "instance has no attribute 'attribute' " which i understand. how do i fix this HELP -- http://mail.python.org/mailman/listinfo/python-list
Re: convert string literal to object attribute
On Oct 31, 3:00 pm, Marc 'BlackJack' Rintsch <[EMAIL PROTECTED]> wrote: > On Fri, 31 Oct 2008 11:40:02 -0700, BiraRai wrote: > > def getAttributeForProperty(self,rollnumber,attribute): > > # attribute have the value _ward > > ''' > > If year is null then use current year. Returns the value of the > > attribute for the given roll number ''' > > print 'Searching for attribute', attribute for index, i in > > enumerate(self._aa): > > if (rollnumber == i._roll_number) and ( hasattr > (i,attribute) ) : > > print index,i.attribute (COMPILER ERROR HERE) return > i.attribute > > return > > print "\n" > > return > > > i want i.attribute to be treated as i._ward > > Look at the `getattr()` function. > > > I get a compile error "instance has no attribute 'attribute' " which i > > understand. how do i fix this > > It's not a compile error but a runtime error. > > Ciao, > Marc 'BlackJack' Rintsch Thanks Marc, worked great. -- http://mail.python.org/mailman/listinfo/python-list
object creation
for record in roll: x = box() x.createSomething(record) do something Can anyone tell me why python keeps return the original object x that was created in the FOR loop. I want to instantiate a new x object for each iteration of the FOR loop -- http://mail.python.org/mailman/listinfo/python-list
Re: object creation
On Nov 14, 5:44 pm, George Sakkis <[EMAIL PROTECTED]> wrote: > On Nov 14, 5:16 pm, BiraRai <[EMAIL PROTECTED]> wrote: > > > for record in roll: > > x = box() > > x.createSomething(record) > > do something > > > Can anyone tell me why python keeps return the original object x that > > was created in the FOR loop. I want to instantiate a new x object for > > each iteration of the FOR loop > > What is box()? Pasting its definition would help. > > George class box: a = int() b = int() def createSomething(self,x): -- http://mail.python.org/mailman/listinfo/python-list