Pythoncollections.Counter数据结构类的构造函数__init__()介绍
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对象可以用来统计可迭代对象中元素的数量,并以键-值对的形式存储。
