Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/309.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 如何删除所有其他键,但在字典中保留一个键_Python_Dictionary_Python 2.7_Key - Fatal编程技术网

Python 如何删除所有其他键,但在字典中保留一个键

Python 如何删除所有其他键,但在字典中保留一个键,python,dictionary,python-2.7,key,Python,Dictionary,Python 2.7,Key,我有一本这样的字典: family = {'mother':'Alice', 'father': 'Richard', 'son': 'Toni'} 如何删除其他密钥但保留“子”密钥 抱歉误解,我的意思是如何删除所有其他键,但在字典中保留一个键为什么不只是: son_value = family['son'] family.clear() family['son'] = son_value 或者在密钥上迭代: for k in family: if k != 'son':

我有一本这样的字典:

family = {'mother':'Alice', 'father': 'Richard', 'son': 'Toni'}
如何删除其他密钥但保留“子”密钥

抱歉误解,我的意思是如何删除所有其他键,但在字典中保留一个键

为什么不只是:

son_value = family['son']
family.clear()
family['son'] = son_value
或者在密钥上迭代:

for k in family:
    if k != 'son':
        del family[k]

没有最后一把钥匙这样的东西,因为

如果您只需要子字典中的条目
'son'
,您可以使用:

>>> family = {'mother':'Alice', 'father': 'Richard', 'son': 'Toni'}
>>> subdictionary = {'son': family['son']}

这实际上并没有清除原始的
系列
dict。如果有其他引用,它可能不是OP想要的。(再说一次,这可能很好……这实际上是OP是在问他/她到底想要什么还是认为他/她想要什么的问题)@mgilson True,但希望OP编写的代码不会有这个问题!
family = {'mother':'Alice', 'father': 'Richard', 'son': 'Toni'}
family = {'son': family['son']}