小编典典

如何增加或增加字典条目?

python

长期缺席并喜欢它之后,我目前正在重新使用Python。但是,我发现自己反复遇到一种模式。我一直认为,必须有一种更好的方式表达我想要的东西,而我可能做错了方式。

我正在编写的代码具有以下形式:

# foo is a dictionary
if foo.has_key(bar):
  foo[bar] += 1
else:
  foo[bar] = 1

我在程序中写很多。我的第一个反应是将其推出辅助函数,但是通常python库已经提供了类似的功能。

我缺少一些简单的语法技巧吗?还是采用这种方式?


阅读 225

收藏
2020-12-20

共1个答案

小编典典

使用defaultdict

from collections import defaultdict

foo = defaultdict(int)
foo[bar] += 1

在Python> =
2.7中,您还有一个单独的Counter类用于这些目的。对于Python
2.5和2.6,可以使用其向后移植的版本

2020-12-20