添加计数器会删除密钥

添加计数器会删除密钥,第1张

添加计数器会删除密钥

从源头上;

def __add__(self, other):    '''Add counts from two counters.    >>> Counter('abbb') + Counter('bcc')    Counter({'b': 4, 'c': 2, 'a': 1})    '''    if not isinstance(other, Counter):        return NotImplemented    result = Counter()    for elem, count in self.items():        newcount = count + other[elem]        if newcount > 0: result[elem] = newcount    for elem, count in other.items():        if elem not in self and count > 0: result[elem] = count    return result

似乎Counter实现为删除 键,这些键的总和为零 。由于默认值为零,并且源也为零,因此结果字典不包含该键。

也许您可以通过update获得相同的行为:

a.update(b)

似乎可以满足您的要求。可能较慢,该

__add__
方法的手工实现会快得多。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5644587.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存