我希望能够以字符串形式获取变量的名称,但我不知道 Python 是否具有那么多的自省功能。就像是:
>>> print(my_var.__name__)
'my_var'
我想这样做,因为我有一堆变量,我想把它们变成字典,例如:
bar = True
foo = False
>>> my_dict = dict(bar=bar, foo=foo)
>>> print my_dict
{'foo': False, 'bar': True}
但我想要比这更自动化的东西。
Python有locals()
and vars()
,所以我想有办法。
正如 unwind 所说,这实际上并不是您在 Python 中所做的事情 - 变量实际上是到对象的名称映射。
However,这是尝试执行此操作的一种方法:
>>> a = 1
>>> for k, v in list(locals().iteritems()):
if v is a:
a_as_str = k
>>> a_as_str
a
>>> type(a_as_str)
'str'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)