Fredrik Lundh <[EMAIL PROTECTED]> writes:

> Pyenos wrote:
> 
> > #############################CODE##############################
> > t_len=0
> > class WORK:
> >     def getwork(self):
> >         def formattable(table_to_process,type):
> > TYPE=["p","t","T","s","i"] #list of types to format
> >             if type==TYPE[1]:
> >                 def format_t():
> >                     row=[]
> >                     for col in table_to_process:
> >                         #######################
> >                         # ERROR PRONE PART    #
> >                         #######################
> >                         if len(str(col))>t_len:
> >                             t_len=len(str(col))
> >                         #######################
> > # Error message says:                                                   #
> > # UnboundLocalError: local variable 't_len' referenced before assignment#
> >                         row+=col
> >                         if (table_to_process.index(col)+1)%7==0:
> >                             t_temp.append(row)
> >                             row=[]
> >                 format_t()
> > #################################################################
> 
> wow.
> 
> > Interpreter says that t_len is local variable although i have
> > specified t_len=0 in line 1. Also, although i've stated t_len=0 in
> > line 1, it says that t_len is referenced before assignment.
> 
> each function introduces a new scope.
> 
> </f>

does class WORK inherit t_len=0 from line1?

does def getwork() inherit t_len=0 from line1?

does def formattable(table_to_process,type) inherit t_len=0 from line1?

does def format_t() inherit t_len=0 from line1?

thanks.

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

Reply via email to