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

collections.Counter类的__init__()函数使用示例

发布时间:2023-12-27 15:47:24

collections.Counter是一个用于统计元素数量的工具类,它继承自dict类。在初始化Counter对象时,可以传入一个可迭代对象作为参数,用于对Counter对象进行初始化。在__init__()函数中,Counter会根据传入的可迭代对象统计元素的数量,并将每个元素作为字典的键,元素出现的次数作为字典的值保存起来。

下面是一个使用示例:

from collections import Counter

# 定义一个列表
fruits = ['apple', 'banana', 'apple', 'orange', 'banana', 'apple']
# 初始化一个Counter对象
fruit_counter = Counter(fruits)

# 输出Counter对象
print(fruit_counter)

运行以上代码,输出结果如下:

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

可以看到,Counter对象中每个元素的名称作为字典的键,该元素在列表中出现的次数作为字典的值。

除了可迭代对象外,Counter类的__init__()函数还可以接受其他形式的输入来初始化Counter对象。例如,可以传入一个字典作为参数,此时Counter对象会将字典中的键作为元素,将键对应的值作为出现次数进行统计。

from collections import Counter

# 定义一个字典
fruits = {'apple': 3, 'banana': 2, 'orange': 1}
# 初始化一个Counter对象
fruit_counter = Counter(fruits)

# 输出Counter对象
print(fruit_counter)

运行以上代码,输出结果如下:

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

可以看到,Counter对象中的元素名称和次数与输入的字典完全一致。

除了以上示例中使用的可迭代对象和字典外,Counter类的__init__()函数还可以接受其他形式的输入,如字符串、元组等。在这些情况下,Counter对象会以字符作为元素,并统计字符在输入中的出现次数。

from collections import Counter

# 定义一个字符串
word = "hello"
# 初始化一个Counter对象
word_counter = Counter(word)

# 输出Counter对象
print(word_counter)

运行以上代码,输出结果如下:

Counter({'l': 2, 'o': 1, 'h': 1, 'e': 1})

可以看到,Counter对象中的元素名称和次数与输入的字母完全一致。

综上所述,Counter类的__init__()函数可以接受各种形式的可迭代对象作为参数,用于初始化Counter对象。初始化后的Counter对象将以元素作为字典键,元素在输入中出现的次数作为字典值进行保存,方便进行元素统计。