Python清除字典中的每个列表

时间:2018-11-26 19:32:26

标签: python list dictionary

我有一个列表字典,像这样:

results = {'Thing' : [], 'SecondThing': []}

经过一些处理,我需要在不删除映射的情况下清除字典中的每个列表,但是我不确定如何对其进行迭代,因为Python告诉我这是一个str

for key in results:
    print(type(key))

但是我不想要键,我想要值,所以我尝试了:

for key,value in results:

但是我被告知有too many values to unpack,所以我显然在做些愚蠢的事情。

3 个答案:

答案 0 :(得分:3)

您只需将空列表分配给每个字典值:

for key in results:
    results[key] = []

或者如果您在清除所有列表后不想拥有其他list对象,只需在这些列表上调用list.clear()

for key in results:
    results[key].clear()

答案 1 :(得分:0)

您还可以使用:

for val in results.values():
    do_whatever(val)

类似地,results.keys()将为您提供键('Thing'和'SecondThing'),而.items()将为您提供(键,值)的元组。

答案 2 :(得分:0)

此外,如果您想遍历键和值:

d = {'Hello':'Welt'}
for k, v in d.items():
    print(k, v)