我想从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)
但这似乎只是删除了第一个元素?
答案 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'
现在是第一个元素,并被跳过。
您可以在任何有关更改列表的帖子中阅读此内容。