On Thursday, 27 December 2012 11:14:36 UTC+5:30, Chris Angelico wrote: > On Thu, Dec 27, 2012 at 3:52 PM, Tim Roberts <t...@probo.com> wrote: > > > The > > > compiled code in a function, for example, exists as an object without a > > > name. That unnamed object can be bound to one or more function names, but > > > the code doesn't know that. Example: > > > > > > def one(): > > > print( "Here's one" ) > > > > > > two = one > > > > > > That creates one function object, bound to two names. What name would you > > > expect to grab inside the function? > > > > Presumably 'one'. > > > > > Even more obscure: > > > > > > two = lamba : "one" > > > one = two > > > > > > Which one of these is the "name" of the function? > > > > I would say '<lambda>'. Whatever method is used to get the function's > > name, I would expect it to match the __name__ attribute of the > > function (which is a peer to __code__, but I don't think the > > function's code *is* the function). > > > > ChrisA
If i call one() and two() respectively, i would like to see "one" and "two". -- http://mail.python.org/mailman/listinfo/python-list