python中的counter()、elements()、most_common()和subtract()函数的用法

python中的counter()、elements()、most_common()和subtract()函数的用法

counter()方法:

class collections.Counter([iterable-or-mapping])

        Counter是用于计算可哈希对象的字典子类。它是一个无序的集合,其元素以字典key的形式存储,并将其计数存储为字典value。 计数允许为包括零或负计数的任何整数值。 Counter类与其他语言的bag或multisets类似。

示例代码如下:

from collections import Counter

list1 = ['a', 'b', 'c', 'b', 'a', 'b']
c = Counter(list1)
print(c)
print(c.keys())
print(c.values())

运行结果为:

Counter({'b': 3, 'a': 2, 'c': 1})
dict_keys(['a', 'b', 'c'])
dict_values([2, 3, 1])

elements()方法:

        将元素返回一个迭代器,每次重复的次数与它的次数相同。 元素以任意顺序返回。 如果一个元素的数量少于一个,elements()会忽略它。

示例代码如下:

from collections import Counter

a = Counter(我=4, 爱=5, 你=2)
print(a)
print(list(a))
print(a.elements())
print(list(a.elements()))

运行结果为:

Counter({'爱': 5, '我': 4, '你': 2})
['我', '爱', '你']

['我', '我', '我', '我', '爱', '爱', '爱', '爱', '爱', '你', '你']

most_common([n])方法:

        列出n个最常见的元素及其数量。 如果省略n或None,most_common()返回计数器中的所有元素。 具有相同计数的元素可以任意排序:

示例代码如下:

from collections import Counter

a = Counter(我=4, 爱=5, 你=2)
print(a.most_common())
print(a.most_common(2))

运行结果如下:

[('爱', 5), ('我', 4), ('你', 2)]
[('爱', 5), ('我', 4)]

subtract([iterable-or-mapping])方法:

    元素从一个迭代器或另一个映射(或计数器)中减去。 像dict.update()一样,但减去计数而不是替换它们。 输入和输出都可以是零或负数。

示例代码如下:

from collections import Counter

a = Counter(我=4, 爱=5, 你=2, 呀=1)
b = Counter(我=1, 爱=2, 你=2, 呀=6)
print(a.subtract(b))
print(a)
print(b)

运行结果为:

None
Counter({'我': 3, '爱': 3, '你': 0, '呀': -5})
Counter({'呀': 6, '爱': 2, '你': 2, '我': 1})

 

你可能感兴趣的:(python,python)