我们可以创建一个上下文管理器,通过sys._getframe(1)获取当前帧的上一帧,进而获取局部变量。使用上下文管理器的方式可以更加优雅地获取变量名称,并且无需手动删除帧对象。 总结 本文介绍了四种不同的方法来获取变量名称字符串。具体选择哪种方法取决于你的需求和使用场景。如果你只需要获取全局变量的名称,可以使用global...
var_valinlocal_vars.items():ifvar_val==var_value:returnvar_name# 获取全局变量global_vars=globals()forvar_name,var_valinglobal_vars.items():ifvar_val==var_value:returnvar_namereturnNone# 示例变量x=10y=20z=x+y# 获取变量名为30的变量result=get_variable_name(30)print(result)# 输出:...
比如我们想有这么一个函数,其用法是:pr(x),输出是x = 3。我们需要从x得到'x'这个字符串。 我写了个很土的:defwhatis(x, verbose = 1):print(x,'is a', end=''); x = eval(x);print(type(x), end='')print(', which has'+ str(dir(x)) +'\n'ifverboseelse'') whatis('[1]') 本...
var_valueinglobals().items():print(f'变量值 {var_value} 对应的 变量名 为:{var_name}')num...
方法一:使用正则表达式(re)进行单个变量名转化。方法二:通过inspect模块的inspect函数进行单个变量名转化。方法三:利用locals()或globals()函数获取当前作用域内的变量名,并转化为字符串。以上方法均可实现单个变量名的转化,同时配合exec函数,能够进行元编程操作。对于批量操作多个变量名的需求,可以通过...
可以看到如果获取变量a,获取不到a这个字符串,而是获取到a的值。那么如果需要对a这个变量名进行操作,...
我已经阅读 了如何将函数名作为字符串获取? . 我怎样才能对变量做同样的事情?与函数相反,Python 变量没有 __name__ 属性。 换句话说,如果我有一个变量,例如: foo = dict() foo['bar'] = 2 我正在寻找一个函数/属性,例如 retrieve_name() 以便从此列表中在 Pandas 中创建一个 DataFrame ,其中 列名 ...
在Python中获取变量的名称 可以使用内置函数locals()和globals()。这两个函数返回一个字典,其中包含了当前作用域中的所有变量和它们的值。通过遍历这个字典,我们可以获取变量的名称。 下面是一个示例代码: 代码语言:txt 复制 def get_variable_name(var): for name, value in globals().items(): if value is ...
[7, 8, 9] is 29979072 如何显示为 id of tom is 29979512 id of jack is 23719208 id of alice is 29979072 另外疑惑的是,python中变量只是对象的一个引用,如 tom=[1,2,3] tom只是列表对象[1,2,3]的一个引用,那么假如是否能实现如下一个函数 def func1(arg1="") "打印传入变量的名字" print ...
可以使用正则表达式。或者如果你要提取的是字符串中的数字或者不要数字 可以使用 isdigit():例:S=12nmmm123m1 I=''for i in S:if i.isdigit():I=I+i I就是这里边的所有数字集合