无法在python

时间:2017-03-18 11:43:37

标签: python loops dictionary

我已经定义了一个名为modify的函数,它修改了给定的字符串。我有一个名为elements的字典,其中包含一些字符串。但是,我无法修改存储在dict中的字符串。

x = "abc"
x = modify(x)

这可行,但是当我这样做时;

for element in elements:
    element = modify(element)

这不起作用。知道为什么吗?我对python很新。

2 个答案:

答案 0 :(得分:0)

在迭代它们时,你无法修改dict的元素。

您需要使用以下内容:

for key in elements:
    elements[key] = modify(elements[key])

答案 1 :(得分:0)

如果您需要将函数应用于字典的每个成员,请考虑使用字典理解:

elements = {k: modify(v) for k, v in elements.items()}

如果您使用的是python 2.7,请使用elements.iteritems()代替elements.items()