Python 地向字典添加键

标签 python python-3.x dictionary counter ordereddictionary

我想添加一个计数为 1 的键,每次递增时递增,这是一个经典的操作。这是我的常规代码。

d = OrderedDict()
for i, v in enumerate(s):
   if v not in d:
      d[v] = 1
   else:
      d[v] += 1

如何使用 setdefault 而不是 collections 使用 1 行代码来完成此操作。计数器 如果这是一个列表,那么我就可以做到,

d.setdefault(v, []).append()

有没有办法用整数加法做类似的事情。

最佳答案

你可以这样做:

d[v] = d.get(v, 0) + 1

关于Python 地向字典添加键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51066851/

相关文章:

c++ - std::map::find()

python - 创建唯一列表 : comparing dict objects

python - 及时绘制 pandas 数据框

python - PyQt/PySide 简单 XY 图小部件

python - 在类方法文档字符串中使用字符串格式

python - 我无法使类方法起作用;如果我将方法代码复制粘贴到应该调用该方法的位置,它就可以工作

Python:尝试从导入的包中导入模块时出现 'ModuleNotFoundError'

c# - 使用 wpf 在列表框中绑定(bind)字典的键和值

python - Django request.user.is_authenticated 引发字典更新序列元素 #0 的长度为 X;需要 2 个

python - 使用 python 程序重命名 linux 目录中的所有 XML 文件