思路:首先将输入的字符串转换成数字列表,然后用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}\t", 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
``
编写程序随机输入包含任意个0到10之间的整数列表并按升序统计每个元素的出现次数。用例:输入:1343514143输出:13 33 43 51

原文地址: https://www.cveoy.top/t/topic/faDx 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录