目录
- 一、前言
- 二、解决过程
- 解法一
- 方法二
- 解法三
- 三、总结
一、前言
前几天在Python钻石交流群分享了一个Python基础的问题,这里拿出来给大家分享下,一起学习下。
编写程序,输入若干整数(整数之间以逗号间隔),统计每个整数的出现次数。
这个题目并不难,但是对于初学者来说,还是有点难度的,一起来看看解决方法吧!
二、解决过程
解法一
其实这个题目就是在考你Python基础的内容。
代码如下:
import collections
data = input(">>> ")
new_lst = eval(data)
frequency = collections.Counter(new_lst)
print(frequency)

当然了,初学者肯定是不知道Counter这个方法的,确实有点作弊的嫌疑。

下面一起来看看其他的方法吧!
方法二
下面这个也是个字典计数,直接上代码,如下所示:
a = eval(input(">>>"))
a_count = dict()
for i in a:
a_count[i] = a_count.get(i, 0) + 1
print(a_count)

这里很巧妙地使用了字典,而且使用了get方法,一气呵成。如果你觉得难以理解,还可以看看下面的复杂版本。
解法三
直接上代码了,如下所示:
data = input(">>> ")
new_lst = eval(data)
dic = {}
for item in new_lst:
if item not in dic:
dic[item] = 1
else:
dic[item] += 1
print(dic)

这个方法很纯粹,也很容易理解,不多解释了。
三、总结
这篇文章主要分享了一道Python基础问题,针对该问题给出了具体的解析和代码演示,一共3个方法,帮助粉丝顺利解决了问题。相信肯定还有其他方法的,欢迎大家积极尝试,
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)