python - 修改Python字典中的值

标签 python dictionary

我有一本名为 Basket #offruit 的字典。由于某些原因,篮子看起来像这样..

Basket = {
          Fruit1 : "none"
          Fruit2 : "none"
          Fruit3 : "none"
          Fruit4 : "none"
          Fruit5 : "none"
         }

我想检查 Apple 是否在这本词典中,如果不在,请将其输入为 Fruit1。但是假设篮子已经以某种方式被访问,并且香蕉已经被设置为 Fruit1,那么我希望将 Apple 设置为 Fruit2,但如果 Pear 已经在那里,那么它应该是 Fruit3,依此类推。我的整体代码是......不是最好的,但在这一点上,如果它要工作,这是它必须工作的方式,所以缺少废弃已经存在的东西(我希望稍后全部修改)我怎样才能使这个工作?

目前,代码的其余部分只是检查 Fruit1 == Apple 是否,如果没有,则继续比较 Fruit2 等,如果找到匹配项,则执行操作,但如果篮子中已经没有 Apple,则 Apple 永远不会被添加,并且篮子中的所有键最初设置为“无”。我自己都迷惑了。任何建议表示赞赏!

最佳答案

声明如下:

'apple' in Basket.values()

如果“apple”是字典中的值之一,则返回 True。

Basket.values().index('apple')

返回“apple”的索引。如果“apple”不在字典中,您会收到 ValueError 异常。

如果出现 ValueError 异常,请添加“apple”作为“Fruit1”值;否则,使用索引设置正确的 FruitN 值:

index = Basket.values().index('apple')
key, value = Basket.items()[index]
value = 'banana'
Basket[key] = value

注意,上面的代码片段展示了如何用“banana”替换现有的“apple”值;如果“apple”不在字典中,它不会显示异常处理。然而,这应该足以让你感动。

关于python - 修改Python字典中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33670903/

相关文章:

C# 从字典列表中获取所有键

python - 在 Elasticsearch 中搜索句点和连字符分隔的字段

python - 如何对以编程方式设置的属性调用方法?

c# - 从 C# 通用字典中过滤掉值

python - 检查 Python 字典是否具有相同的形状和键

python - 如何基于相同类型的现有字典并使用原始名称在适当的位置构建新的 defaultdict(list)

python - 从 Pandas 中的 read_csv 获取对象大小

python - OpenCV - 用于立体视觉的倾斜相机和三角测量地标

python - 如何将行插入表 sqlalchemy 对象?

python - 如何从每个键有多个值的字典中写入 csv 文件?