On Mon, 19 Feb 2007 05:17:03 -0800, Rob Wolfe wrote: >> > # test.py >> > >> > def fun1(): return "fun1" >> > def fun2(): return "fun2" >> > def fun3(): return "fun3" >> > >> > # list of functions >> > dsp = [f for fname, f in sorted(globals().items()) if callable(f)] >> >> Hmmm... when I try that, I get dozens of other functions, not just fun1, >> fun2 and fun3. And not just functions either; I also get classes. > > Oh, really? Where are these _other_ functions and classes > in *MY* example?
I ran your example, word for word. Copied it and pasted it into my Python session. >> Does Python have a function that will read my mind and only return the >> objects I'm thinking of? > > Your sarcasm is unnecessary. > Using of `globals` function was easier to write this example. That's all. Actually, it wasn't easier to write at all. Your version: dsp = [f for fname, f in sorted(globals().items()) if callable(f)] Sensible version: dsp = [fun1, fun2, fun3] Not only is your version brittle, but it is also about three times as much typing. -- Steven. -- http://mail.python.org/mailman/listinfo/python-list