为了账号安全,请及时绑定邮箱和手机立即绑定

将变量的名称作为字符串获取。

将变量的名称作为字符串获取。

慕桂英4014372 2019-07-01 10:19:29
将变量的名称作为字符串获取。此线程讨论如何在Python中以字符串的形式获取函数的名称:如何在Python中以字符串的形式获得函数名?我怎样才能对一个变量做同样的事情呢?与函数相反,Python变量没有__name__属性。换句话说,如果我有一个变量,例如:foo = dict()foo['bar'] = 2我正在寻找一个函数/属性。retrieve_name:retrieve_name(foo)返回字符串的'foo'最新情况:既然人们问我为什么要这样做,下面就是一个例子。我想从此列表在Pandas中创建DataFrame,在哪里列名由实际字典的名称提供:# List of dictionaries for my DataFramelist_of_dicts = [n_jobs, users, queues, priorities]
查看完整描述

3 回答

?
婷婷同学_

TA贡献1844条经验 获得超8个赞

Python中唯一具有规范名称的对象是模块、函数和类,当然,在定义函数或类或导入模块之后,不能保证该规范名称在任何命名空间中都有任何意义。这些名称也可以在创建对象之后进行修改,因此它们可能并不总是值得信任的。

你想做的事是不可能的不递归地遍历命名对象树名称是对象的单向引用。常见的或花园多样性的Python对象不包含对其名称的引用。想象一下,如果每一个整数、每一个迪克、每一个列表、每一个布尔值都需要维护一个字符串列表,这些字符串表示引用它的名称!这将是一个实现噩梦,对程序员几乎没有好处。


查看完整回答
反对 回复 2019-07-01
?
慕丝7291255

TA贡献1859条经验 获得超6个赞

我不相信这是可能的。考虑以下示例:

>>> a = []>>> b = a>>> id(a)140031712435664>>> id(b)140031712435664

这个ab指向同一个对象,但对象不知道指向哪个变量。


查看完整回答
反对 回复 2019-07-01
  • 3 回答
  • 0 关注
  • 904 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信