从密钥中删除所有值

时间:2017-10-26 20:43:34

标签: python dictionary key

我想从Python中的特定键中删除所有值,例如:

dict = {'A': ['1,2', '2,3'], 'B': ['3,4', '5,6']}
new_dict = {'A': ['1,2', '2,3'], 'B': []}

所有这一切都发生在关键字B'的所有价值中。在这种情况下正在删除。

我尝试迭代B并逐个删除值:

for i in dict['B']:
    dict['B'].remove(i)

但这似乎只是删除了第一个元素?

3 个答案:

答案 0 :(得分:1)

为什么不执行以下操作:

dict['B'] = []

答案 1 :(得分:0)

您可以将密钥重新定义为空列表

dict = {'A': ['1,2', '2,3'], 'B': ['3,4', '5,6']}
new_dict = {'A': dict['A'], 'B':[]}

答案 2 :(得分:0)

如果您要删除所有值,那么知道结果。只需直接分配即可。

dict['B'] = []

您尝试的for循环似乎有效,但它违反了Python的迭代架构。当您删除第一个元素时,其他所有元素都会移动一个元素。返回第二个元素时 - 此时运行时系统通过 position 引用元素 - 没有这样的元素:'5,6'现在是第一个元素,并被跳过。

您可以在任何有关更改列表的帖子中阅读此内容。