首页 > 解决方案 > 为什么我不能在 for 循环工作时更改字典?

问题描述

所以我需要添加新的键:值对或更改现有的,但我的代码不起作用。出了什么问题,我该如何解决?

我想要的是:创建一个字典,key是符号,value是列表中有多少个这个符号

我的代码:

def f(data: list):
    characters = dict()
    for i in data:
        if i in characters:
            characters[i] += 1
        elif i not in data:
            characters[i] = 1
    return characters

标签: pythondictionary

解决方案


请发布您的代码而不是屏幕截图。但是,无论您的输入如何,您的代码都保证返回一个空字典。您的两个条件都将始终评估为假。我认为你想要做的是这样的:

if i in characters:
   characters[i] += 1
else:
   characters[i] = 1

推荐阅读