从字典中的所有值中减去1

Kes*_*v M 1 python dictionary python-3.x

我有一个如下字典:

dict = {'hi':1, 'hi2':2, 'lskdjf':3}
Run Code Online (Sandbox Code Playgroud)

它继续这样超过一百万的价值.

我想将其转换为值为0的字典

例如,这是所需的输出:

dict = {'hi':0, 'hi2':1, 'lskdjf':2}
Run Code Online (Sandbox Code Playgroud)

如何有效地完成这项工作?

Oli*_*çon 5

您可以迭代字典来更新它...

for k in dict_:
    dict_[k] -= 1
Run Code Online (Sandbox Code Playgroud)

...或者创建一个包含词典理解的新词典.

new_dict = {k: v - 1 for k, v in dict_.items()}
Run Code Online (Sandbox Code Playgroud)

在这两种情况下,请注意我替换了您的变量名称dict_以避免覆盖内置dict名称.