david ha scritto: > On Fri, 07 Dec 2007 16:46:56 +0100, Glauco wrote: > >> [EMAIL PROTECTED] ha scritto: >>> Hello everyone, >>> >>> I have written this small utility function for transforming legacy file >>> to Python dict: >>> >>> >>> def lookupdmo(domain): >>> lines = open('/etc/virtual/domainowners','r').readlines() lines >>> = [ [y.lstrip().rstrip() for y in x.split(':')] for x in >>> lines] >>> lines = [ x for x in lines if len(x) == 2 ] d = dict() >>> for line in lines: >>> d[line[0]]=line[1] >>> return d[domain] >>> >>> >> cache = None >> >> def lookup( domain ): >> if not cache: >> cache = dict( [map( lambda x: x.strip(), x.split(':')) for x in >> open('/etc/virtual/domainowners','r').readlines()]) >> return cache.get(domain) >> > >>>> lookup(1) > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > File "<stdin>", line 2, in lookup > UnboundLocalError: local variable 'cache' referenced before assignment > > You miss the: > def lookup(domain): > global cache > ... > > bye
yezzz! you can use global or static Gla -- http://mail.python.org/mailman/listinfo/python-list