3 回答

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個(gè)贊
這是一個(gè)實(shí)用程序函數(shù),該函數(shù)基于“ Tiran”在Hophat Abc所引用的討論中提出的評(píng)論,該評(píng)論將在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

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超11個(gè)贊
不容易。
您可以遍歷gc.get_objects()列表,測(cè)試每個(gè)對(duì)象是否相同,id()但這不是很實(shí)際。
該id()函數(shù)不可取消引用;它基于內(nèi)存地址的事實(shí)是CPython實(shí)現(xiàn)的詳細(xì)信息,其他Python實(shí)現(xiàn)則不遵循。
添加回答
舉報(bào)