gpt4 book ai didi

python - python中的key和value不会被python解释器删除吗?

转载 作者:太空宇宙 更新时间:2023-11-03 14:51:59 25 4
gpt4 key购买 nike

我英语不好,而且我对 python 很菜鸟,但我对 python map 有一个小问题

它们是否分配了每个键和值的关系?如果我创建了这样的对象

my_map = {}
my_map['id'] = someObject()

someObject 不是悬空指针吗?不会被Python解释器删除吗?

最佳答案

正式:

my_map['id']subscription

那么你有:

Assignment statements are used to (re)bind names to values and to modify attributes or items of mutable objects:

...

If the primary is a mapping object (such as a dictionary), the subscript must have a type compatible with the mapping’s key type, and the mapping is then asked to create a key/datum pair which maps the subscript to the assigned object. This can either replace an existing key/value pair with the same key value, or insert a new key/value pair (if no key with the same value existed).

从这里开始Assignment statements

所以基本上,您将最近创建的对象绑定(bind)/映射到下标,当然,新创建的对象可以通过my_map['id']引用,所以Python 垃圾收集器无法触及它(回收它),并且它不是一个“悬空指针”,或者更准确地说是一个没有任何引用的对象。

旁注:a dangling pointer不是一个用于指代没有引用的对象的术语(您如何使用该术语),而是指对无效对象的引用(这在 Python 中是不可能的)。

关于python - python中的key和value不会被python解释器删除吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45829441/

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