欢迎访问宙启技术站
智能推送

Pythoncollections.Counter数据结构类的构造函数__init__()介绍

发布时间:2023-12-27 15:45:39

Python的collections模块提供了许多数据结构类,其中之一是Counter类。Counter类是一个无序的容器对象,用于追踪在可迭代对象中元素的数量。Counter类的构造函数__init__()用于创建Counter对象,并可以接受不同类型的参数。

Counter类的构造函数__init__()有以下几种使用方式和参数:

1. 使用可迭代对象作为参数:可以传入一个可迭代对象,例如一个列表、元组、字符串或字典。构造函数将迭代对象中的元素作为键,统计它们在可迭代对象中出现的次数。

下面是一个使用列表作为参数创建Counter对象的例子:

from collections import Counter

lst = [1, 2, 3, 1, 2, 3, 4, 1, 2]
counter = Counter(lst)
print(counter)

输出:

Counter({1: 3, 2: 3, 3: 2, 4: 1})

在上面的例子中,Counter对象统计了列表lst中每个元素出现的次数。数字1出现了3次,数字2出现了3次,数字3出现了2次,数字4出现了1次。

2. 使用关键字参数作为参数:可以传入关键字参数来指定元素及其出现的次数。参数的格式为元素-次数对的可迭代对象。

下面是一个使用关键字参数创建Counter对象的例子:

from collections import Counter

counter = Counter(apple=3, banana=2, orange=1)
print(counter)

输出:

Counter({'apple': 3, 'banana': 2, 'orange': 1})

在上面的例子中,Counter对象统计了关键字参数中每个元素出现的次数。'apple'出现了3次,'banana'出现了2次,'orange'出现了1次。

3. 不传入任何参数:如果不传入任何参数,则创建一个空的Counter对象。

下面是一个创建空的Counter对象的例子:

from collections import Counter

counter = Counter()
print(counter)

输出:

Counter()

在上面的例子中,创建了一个空的Counter对象。

除了上述几种使用方式,Counter类的构造函数__init__()还具有其他一些参数可以使用,例如接收一个映射对象作为参数,或者通过子类化来定制Counter类的行为。

总结:

Counter类的构造函数__init__()用于创建Counter对象,并可以接受不同类型的参数。它可以接收可迭代对象作为参数,可以接收关键字参数作为参数,还可以创建一个空的Counter对象。Counter对象可以用来统计可迭代对象中元素的数量,并以键-值对的形式存储。