gpt4 book ai didi

python - 是否可以取消引用变量 id?

转载 作者:IT王子 更新时间:2023-10-28 23:31:10 25 4
gpt4 key购买 nike

您能否取消对从 id 检索到的变量 id 的引用? Python中的函数?例如:

dereference(id(a)) == a

我想从学术角度了解;我知道还有更实用的方法。

最佳答案

这是一个基于“Tiran”在博客 discussion 中发表的(现已删除的)评论的实用函数@Hophat Abc 引用 his own answer这将适用于 Python 2 和 3。

免责声明:如果您阅读链接的讨论,您会发现有些人认为这是非常不安全的,因此永远不要使用它(同样在下面的一些评论)。我不同意这种评估,但我觉得我至少应该提一下关于使用它的一些争论。

import _ctypes

def di(obj_id):
""" Inverse of id() function. """
return _ctypes.PyObj_FromPtr(obj_id)

if __name__ == '__main__':
a = 42
b = 'answer'
print(di(id(a))) # -> 42
print(di(id(b))) # -> answer

关于python - 是否可以取消引用变量 id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15011674/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com