I want to do something like this:
fib = 1
foo = (arg):
print arg, argName # the name of the variable that was put in for arg
foo(fib)
A
You can do it now with the value wrapper from python-varname package.
from varname import Wrapper
fib = Wrapper(1)
def foo(arg):
print(arg.value, arg.name)
foo(fib)
# 1, "fib"
The package is hosted at https://github.com/pwwang/python-varname
I am the author of the package. Let me know if you have any questions using it.