包含我代码中所有标记的Python列表

问题描述 投票:0回答:1

如果我在 Python 3.10 中运行此代码:

import gc


def main():
    a = 23764723
    ref = gc.get_referrers(a)[0]
    print(ref)


if __name__ == "__main__":
    main()

我得到以下输出:

['gc', 'main', 'a', 23764723, 'ref', 'gc', 'get_referrers', 'a', 0, 'print', 'ref', '__main__', '__name__', 'main']

这个列表是什么,它似乎包含我的代码中的所有文字(?)? Python 文档中是否有任何解释?

谢谢!

python
1个回答
0
投票
它是所有引用“a”的对象的列表

gc = 垃圾收集器接口

gc.get_referrers(*objs)

返回直接引用任何 obj 的对象列表。该函数只会定位那些支持垃圾回收的容器;将找不到引用其他对象但不支持垃圾回收的扩展类型。

请注意,已取消引用但存在于循环中且尚未被垃圾收集器收集的对象可以在结果引用者中列出。要仅获取当前活动的对象,请在调用 get_referrers() 之前调用collect()。

© www.soinside.com 2019 - 2024. All rights reserved.