python - 在 Python 中获取变量的名称
问题描述
如果我有var
任何类型的局部/全局变量,我如何获得它的名称,即字符串"var"
?即对于一些虚构的函数或运算符,nameof()
下一个代码应该可以工作:
var = 123
assert nameof(var) == "var"
有.__name__
用于获取变量保存值的函数或类型对象的名称的属性,但是有没有类似的东西用于获取变量本身的名称?
这可以在不将变量包装到某个魔术对象中的情况下实现吗,就像某些库为了获取变量的名称所做的那样?如果没有魔法包装器就无法实现,那么用于这种情况的最常见/流行的包装库是什么?
解决方案
您可以使用包 python-varname 执行此操作:https ://github.com/pwwang/python-varname
第一次运行pip install varname
。然后看下面的代码:
from varname import nameof
var = 123
name = nameof(var)
#name will be 'var'
推荐阅读
- python - 在基于类的 ListView 中搜索 | 姜戈
- c# - 为什么使用parallel.forEach 时缺少一些记录?
- react-native - react-native 首次加载后无法访问 detox 中的元素
- html - 垂直居中两个浮动图像
- python - 动态 ID Selenium Python Chrome
- html - img标签上css的width属性
- reactjs - 如何在 React App 中显示微调器?
- python - 无法在venv中导入dbus
- embedded - 如何在 buildroot 中安装其他软件包版本而不是默认版本?
- python - /ads/ad/2/comment 处的 ValueError