On 2015-04-20 09:15, Joel Goldstick wrote:
On Mon, Apr 20, 2015 at 11:24 AM, Alex Kleider <[email protected]>
wrote:
Does python provide the introspective ability to retrieve the name to
which
an object is bound?
For example:
$ python3
Python 3.4.0 (default, Apr 11 2014, 13:05:18)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
a = 69
print("Identifier <{}> is bound to {}.".format(a.__name__, a))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'int' object has no attribute '__name__'
An object can be bound to multiple names. Within a namespace you can
use locals to see names, then compare various names like so:
a = 3
b = 6
c = a
locals()
{'a': 3, 'c': 3, 'b': 6, '__builtins__': <module '__builtin__'
(built-in)>, '__package__': None, '__name__': '__main__', '__doc__':
None}
a is b
False
a is c
True
Showing my desired use case might make my question more understandable:
def debug(var_name):
if args["--debug"]:
print("Identifier <{}> is bound to: {}"
.format(var_name.__name__, repr(var_name)))
I don't think the built in locals() can help me.
Thanks all the same.
Alex
_______________________________________________
Tutor maillist - [email protected]
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor