python - 处理 dict 中的 keyerror 的最佳方法

标签 python dictionary

当我尝试从 dict 获取值时,我想知道处理 keyerror 的最佳方法。

我需要这个,因为我的字典保存了一些事件的计数。每当发生事件时,我都会从 dict 中获取计数并将其递增并将其放回原处。

我在网上找到了一些解决方案,但它们适用于其他一些语言。任何帮助表示赞赏。

我现在正在处理 keyerror 异常。想知道处理字典中键错误的最佳方法。

注意:这不是关于对列表中的项目进行计数,而是关于从 dict 检索值(不存在)时处理异常。

最佳答案

您可以使用 dict.get如果您想使用 dict

mydict[key] = mydict.get(key, 0) + 1

或者您可以处理KeyError
try:
    mydict[key] += 1
except KeyError:
    mydict[key] = 1

或者您可以使用 defaultdict
from collections import defaultdict
mydict = defaultdict(int)
mydict[key] += 1

关于python - 处理 dict 中的 keyerror 的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36597869/

相关文章:

Python 错误 : io. UnsupportedOperation: fileno

Python - 以 numpy datetime64 格式获取当前时间

c# - 我怎样才能为 php 做 c# 字典呢?循环类

python - 拆分一个字符串并将子字符串保存到字典中。 Python

python - 从字典中的字典中删除 NaN(Dict 在运行时错误期间更改大小)

c++ - 在 C++ 中实现二维区间搜索的最佳方法是什么?

java - 当用户双击应用程序中的文本地址时启动 map 应用程序

python - 为什么 (0x7FFFFFFF >> 31) + 1 为零?

python - biopython 的 efetch 仅返回任何数据库中的第一个特征

python - 将一行 "if else"语句分成多行