要删除dict元素,我们这样做:
del d[key]
有没有办法通过引用此键来删除dict元素。 例如,如果我这样做:
ref = d[key]
del ref
删除' ref'变量。我想删除dict元素,而不是键,而是删除引用的var。更确切地说,我在另一个词典中保留了引用,如下所示:
ref[k] = d[key]
indirect_del(ref[k])
我想要的原因是'关键'太大了,我不想将密钥存储在引用字典中,但只是保持对它的引用,并最终能够删除引用。
这可能吗?
答案 0 :(得分:0)
不,至少在mkdir test
cd test
git init
。
del
删除名称,而不删除对象。在没有更多名称引用它们之后,垃圾收集器最终会删除对象。
但我认为存储对密钥的引用没有问题
del
答案 1 :(得分:0)
Perl引用可以做到这一点,但在Python中,除了引用和键之外,不可能从dict
中删除,这样就可以形成{{1}声明。
所以只需将该对存储在del d[k]
词典中。当然,如果所有引用都在同一个ref
中,那么显然可以写
d
并存储密钥。
目前尚不清楚您的内存问题是什么:当您将对象存储在多个位置时,对象不会占用更多内存。