无法在python中修改dict的元素
我定义了一个名为无法在python中修改dict的元素,python,loops,dictionary,Python,Loops,Dictionary,我定义了一个名为modify的函数,它修改给定的字符串。我有一个名为elements的dict,其中存储了一些字符串。但是,我无法修改dict中存储的字符串 x = "abc" x = modify(x) 这是可行的,但当我这样做 for element in elements: element = modify(element) 这是行不通的。知道为什么吗?我对python相当陌生。您不能在迭代dict元素时修改它们 您需要使用如下内容: for key in elements:
modify
的函数,它修改给定的字符串。我有一个名为elements
的dict,其中存储了一些字符串。但是,我无法修改dict中存储的字符串
x = "abc"
x = modify(x)
这是可行的,但当我这样做
for element in elements:
element = modify(element)
这是行不通的。知道为什么吗?我对python相当陌生。您不能在迭代dict元素时修改它们 您需要使用如下内容:
for key in elements:
elements[key] = modify(elements[key])
您不能在遍历dict的元素时对其进行修改 您需要使用如下内容:
for key in elements:
elements[key] = modify(elements[key])
如果需要对字典的每个成员应用一个函数,请考虑使用DICT理解:
elements = {k: modify(v) for k, v in elements.items()}
如果使用Python 2.7,则使用<>代码>元素.ItItIsMeSe()/Cyto>而不是<代码>元素.ITMs()>
< P>如果需要对字典的每个成员应用函数,请考虑使用DICT理解:elements = {k: modify(v) for k, v in elements.items()}
如果您使用的是python 2.7,请使用
elements.iteritems()
而不是elements.items()
这对我来说有点复杂。因为我只是个初学者。我同意萨提亚的回答。无论如何,谢谢。这对我来说有点复杂。因为我只是个初学者。我同意萨提亚的回答。无论如何,谢谢。@JohnSmith:在这个网站上,通过投票选出所有有用的答案来表达你的感激之情。您可以通过单击答案左上角的向上箭头来完成此操作。此外,单击答案左上角附近的复选标记,接受最佳答案(如果它确实回答了您的问题)。这比在评论中说谢谢要好。这也有助于其他人看到你的问题得到了回答。接受答案有时间限制。我的代表不允许我投票。我试着点击答案。但是它让我等x分钟等等。@JohnSmith:在这个网站上,通过投票选出所有有用的答案来表达你的感激之情。您可以通过单击答案左上角的向上箭头来完成此操作。此外,单击答案左上角附近的复选标记,接受最佳答案(如果它确实回答了您的问题)。这比在评论中说谢谢要好。这也有助于其他人看到你的问题得到了回答。接受答案有时间限制。我的代表不允许我投票。我试着点击答案。但它让我等x分钟等等。