You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中字典键不存在则创建条目否则累加值的简洁Pythonic写法

Python 字典计数逻辑的Pythonic实现

以下是几种不需要if/else判断的实现方案,可根据使用场景选择:

  • 原生字典get方法(无额外依赖,完美替代原有逻辑的单行写法)
DICT['KEY'] = DICT.get('KEY', 0) + 1

dict.get(key, default)会在键存在时返回对应值,键不存在时返回指定的默认值,此处设置默认值为0,加1后重新赋值即可实现需求。

  • 批量计数场景专用的defaultdict实现
    如果需要频繁执行该类计数操作,可提前初始化特殊字典实例,后续操作更简洁:
from collections import defaultdict
DICT = defaultdict(int)

# 后续任意需要计数的位置直接写单行代码即可,无需判断键是否存在
DICT['KEY'] += 1

defaultdict会在访问不存在的键时,自动用传入的构造函数生成默认值(int构造的默认值为0),自动完成键的初始化操作。

  • 高频统计场景专用的Counter实现
    如果你的核心需求是统计元素出现频率,可使用专门的计数类,支持更多统计相关功能:
from collections import Counter
cnt = Counter()

cnt['KEY'] += 1

该类除了基础自增逻辑外,还支持直接传入可迭代对象批量统计、取TopN高频元素等扩展能力。


内容的提问来源于stack exchange,提问作者Charles Consumé

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 21:54:03