从内存位置获取Python变量名称或值?

时间:2017-11-13 16:24:55

标签: python python-3.x variables

我浏览过论坛,我似乎无法找到答案(实际上可能没有答案)是否可以通过使用其内存来获取变量或值的名称Python中的位置。换句话说,当我声明a = 10并将值10分配给变量'a',然后我使用id()上的'a'函数时,我得到了存储器中存储'a'值的位置。有没有办法比如打印变量名('a')或值('10'),方法是引用id()返回的值(十进制值或将十进制值转换为十六进制值) hex()功能)?我尝试了一些事情,例如print(id(variable-name))print(decimal-value-from-id),但没有运气。任何帮助将不胜感激,并提前感谢您!

干杯!

1 个答案:

答案 0 :(得分:0)

这可以通过ctypes

实现
import ctypes
a = 10
ctypes.cast(id(a), ctypes.py_object).value
#10

当然,如果对象仍然存在,这将会起作用。