在Python字典中查找和替换一个值

3
我是一个完全的stackoverflow新手,请原谅我如果我最终将其发布到错误的位置(或任何其他新手相关的错误!谢谢)。
我的问题涉及Python 3.x,我正在尝试基本访问一个非常小的字典中的值(3个键,每个键对应一个值)。我在网上(和这里)搜索了很久,但似乎找不到任何关于替换字典中值的内容。我已经找到了“replace”函数,但似乎不适用于字典。
所以,这是我的字典:
a1 = {"Green": "Tree", "Red": "Rose", "Yellow": "Sunflower"}

我该如何查询值“Rose”并将其替换为“Tulip”?

非常感谢您的帮助,即使只是指点一下方向!

非常感谢!


1
你可以从头开始循环遍历你的字典。 - Julien
1
你能解释一下在执行这个操作时遇到了什么问题吗?你尝试过任何代码吗? - idjaw
2
这个怎么得到了赞成? - Padraic Cunningham
@Balance2,你在哪里找到了一个字典的替换方法? - Padraic Cunningham
2个回答

5
您首先需要找到值为"Rose"的键:
for color, flower in a1.items():
    if flower == "Rose":
        a1[color] = "Tulip"

0

如果需要进行多个替换操作,可以使用字典推导式来实现更紧凑的语法:

repl = {"NA": None,"Rose": "Tulip"}
a1 = {key: repl.get(value, value) for key, value in a1.items()}

如果版本是两倍更快的,因为它不需要字典重新分配。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接