Andrew, > > I'm parsing a simple file and given a line's keyword, would like to call > > the equivalently named function.
> No, actually, you wouldn't :-) Doing so means that if your programs input > specification ever changes, you have to rename all of the relevant functions. > Moreover, it leaves open the possibility that you might wind up calling a > function you didn't intend. I'm using Arnaud Delobelle's technique (see below) to insure that only the appropriate methods are called. A great, practical example of a decorator. <snip> functions = {} def register(func): functions[func.__name__] = func return func @register def foo(): print "Foo!" @register def bar(): print "Bar!" >>> functions {'foo': <function foo at 0x6f2f0>, 'bar': <function bar at 0x6f330>} >>> functions['bar']() Bar! </snip> Thanks for your feedback, Malcolm -- http://mail.python.org/mailman/listinfo/python-list