Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python:这是从dict中删除元素的错误方法吗?_Python - Fatal编程技术网

python:这是从dict中删除元素的错误方法吗?

python:这是从dict中删除元素的错误方法吗?,python,Python,我用这种方法从口述中删除催吐剂: d["ele"] = data ... d["ele"] = None 我认为这样可以删除原始元素上的引用,这样就可以释放删除的数据,而不会出现内存泄漏 这样做正确吗?不删除键,只删除值 del d['ele'] 使用del从字典中删除元素: >>> d={} >>> d['asdf']=3 >>> d['ele']=90 >>> d {'asdf': 3, 'ele':

我用这种方法从口述中删除催吐剂:

    d["ele"] = data
...
    d["ele"] = None
我认为这样可以删除原始元素上的引用,这样就可以释放删除的数据,而不会出现内存泄漏


这样做正确吗?

不删除键,只删除值

del d['ele']

使用
del
从字典中删除元素:

>>> d={}
>>> d['asdf']=3
>>> d['ele']=90
>>> d
{'asdf': 3, 'ele': 90}
>>> d['ele']=None
>>> d
{'asdf': 3, 'ele': None}
>>> del d['ele']
>>> d
{'asdf': 3}
>>> 

下面的答案显示了删除(del)的正确方法,但是通过将dictionary键设置为None,您仍然可以释放旧对象使用的内存。你只是没有把它从字典里删除。