如何在Python中获取变量名称作为字符串?
实际上,这不是您在Python中所做的事情,因为变量实际上是对象的名称映射。Python中唯一具有规范名称的对象是模块,函数和类,并且在定义函数或类或导入模块后,当然不能保证此规范名称在任何命名空间中都具有任何含义。这些名称也可以在创建对象之后进行修改,因此它们可能并不总是特别值得信赖。
仍然有一些方法可以将变量的名称获取为字符串。您需要知道变量名的字符串才能提取出来。这也是对变量名称的反向搜索。因此,如果您有两个具有相同值的变量,则它可能会返回其中一个。迭代项返回范围中所有变量及其值的列表。例如,
>>> my_var = 5 >>> my_var_name = [ k for k,v in locals().iteritems() if v == my_var][0] >>> my_var_name 'my_var'