Python 统计数字列表元素出现次数并按升序输出
Python 统计数字列表元素出现次数并按升序输出
本程序使用 Python 语言实现对用户输入的数字列表进行统计,计算每个元素出现的次数,并按升序输出。
思路:
- 首先将输入的字符串转换成数字列表。
- 使用
collections模块中的Counter类进行统计每个元素的出现次数。 - 最后按升序输出每个元素和其出现次数。
代码如下:
import collections
# 输入数字字符串,返回数字列表
def str_to_list(s):
return [int(x) for x in s]
# 统计数字列表中每个元素的出现次数
def count_elements(lst):
cnt = collections.Counter(lst)
return cnt
# 输出结果
def print_result(cnt):
for k, v in sorted(cnt.items()):
print(f'{k}:{v} ', end="")
# 主函数
def main():
s = input('请输入数字字符串:')
lst = str_to_list(s)
cnt = count_elements(lst)
print_result(cnt)
if __name__ == '__main__':
main()
测试结果:
请输入数字字符串:1343514143
1:3 3:3 4:3 5:1
程序说明:
str_to_list(s)函数将输入的字符串s转换为数字列表。count_elements(lst)函数使用collections.Counter(lst)对数字列表lst中的元素进行统计,返回一个字典,键为元素,值为元素出现的次数。print_result(cnt)函数按升序输出字典cnt中的每个元素及其出现次数。main()函数是程序的主函数,调用其他函数完成程序的功能。
总结:
本程序使用 Python 代码实现了对数字列表进行统计的功能,并展示了如何使用 collections.Counter 类进行统计计数,以及如何按升序输出结果。用户可以根据需要修改程序代码,以满足不同的需求。
原文地址: https://www.cveoy.top/t/topic/n3sa 著作权归作者所有。请勿转载和采集!