bob wrote: > At 04:29 PM 9/28/2005, DS wrote: > >> What I'm hoping to avoid is an >> explicit reference to any of the called functions within the program. >> By doing it that way, it would avoid a maintenance problem of having to >> remember to put a reference for every new function in the calling >> program. > > > Try this - a class in which you define all the functions. The __init__ > method builds the dictionary. > > >>> class X: > ... funcs = {} > ... def y(self): > ... pass > ... def __init__(self): > ... for itemname in dir(self): > ... if not itemname.startswith('__'): > ... item = getattr(self, itemname) > ... if callable(item): > ... self.funcs[itemname] = item > ... > >>> y = X() > >>> y.funcs > {'y': <bound method x.y of <__main__.x instance at 0x01119828>>} >
Thanks bob, that's an interesting approach. That would be one huge class. ds _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor