编写程序,输入若干整数(整数之间以逗号间隔),统计每个整数的出现次数。

大家好,我是皮皮。

一、前言

前几天在Python钻石交流群分享了一个Python基础的问题,这里拿出来给大家分享下,一起学习下。

编写程序,输入若干整数(整数之间以逗号间隔),统计每个整数的出现次数。

这个题目并不难,但是对于初学者来说,还是有点难度的,一起来看看解决方法吧!

二、解决过程

解法一

其实这个题目就是在考你Python基础的内容。代码如下:

1import collections 2data = input(">>> ") 3new_lst = eval(data) 4frequency = collections.Counter(new_lst) 5print(frequency) 6

image.png

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

image.png

下面一起来看看其他的方法吧!

【月神】解答

下面这个也是个字典计数,直接上代码,如下所示:

1a = eval(input(">>>")) 2a_count = dict() 3for i in a: 4 a_count[i] = a_count.get(i, 0) + 1 5print(a_count) 6

image.png

这里很巧妙地使用了字典,而且使用了get方法,一气呵成。如果你觉得难以理解,还可以看看下面的复杂版本。

解法三

直接上代码了,如下所示:

1data = input(">>> ") 2new_lst = eval(data) 3dic = {} 4for item in new_lst: 5 if item not in dic: 6 dic[item] = 1 7 else: 8 dic[item] += 1 9print(dic) 10

image.png

这个方法很纯粹,也很容易理解,不多解释了。

三、总结

大家好,我是皮皮。这篇文章主要分享了一道Python基础问题,针对该问题给出了具体的解析和代码演示,一共3个方法,帮助粉丝顺利解决了问题。相信肯定还有其他方法的,欢迎大家积极尝试,如果有好方法,记得也分享给我噢,我帮助分享到群里,大家一起学习交流!

最后感谢【月神】给出的具体解析和代码演示,感谢【dcpeng】、【Jason】、【冯诚】等人参与学习交流。

小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

点赞
收藏

评论区

加载中...

相关推荐

只用3行Python代码,获取星期几?

大家好,我是皮皮。一、前言前几天在Python最强王者交流群分享了一个只用3行Python代码,获取星期几的问题,这里拿出来给大家分享下,一起学习下。看到这个代码,我当时的第一反应是,这个人基础学的还是可以的,input用到位了。对于初学者来说,能写成这样,也是不错的了,起码功能确实是实现了,虽然说起来确实有点说不上来的味道,应缺斯汀。二、解决过程有一说

Python匿名函数lambda x: x-0 and x-1代表的意思是什么...

大家好,我是我是皮皮。一、前言前几天在Python最强王者交流群有个叫【ChloéP.】的粉丝问了一个关于Python匿名函数的问题,讨论十分火热,这里拿出来给大家分享下,一起学习。题目如下图所示:下面是给出的答案,乍看有点难懂。二、解决过程这个这里给出【杰】大佬的答案,一起来看看吧。下面是fliter这个函数的含义:不过看上去还是有点晦涩难懂,后来【德善

分享一场Python正则表达式中的特殊序列问答交流

大家好,我是我是皮皮。一、前言前几天在Python最强王者交流群有个叫【杰】的粉丝问了一个关于Python正则表达式的问题,讨论十分火热,这里拿出来给大家分享下,一起学习。下图是原始题目:下面是给出的答案,乍看有点难懂,不过有正则狂魔【小王】大佬在,问题不大。二、解决过程这个这里给出【小王】大佬的解答,一起来看看吧,下面是他给的一个示例代码。import

盘点一道Python中的yield生成器的题目

大家好,我是皮皮。一、前言前几天在Python最强王者交流群有个叫【Chloe】的粉丝问了一个Python生成器的问题,这里拿出来给大家分享下,一起学习下。二、解决过程这里【月神】给出了解答,如下图所示:当然了,这块有点难理解的部分,如下图所示:如果加return的话,效果就不一样了。这里在额外细节化一下,【瑜亮老师】给出了yield用法细节。这个题目主

编写一个闭包函数,要实现的功能是计数功能

大家好,我是皮皮。一、前言前几天在Python最强王者交流群有个叫【杰】的粉丝问了一个Python装饰器的问题,这里拿出来给大家分享下,一起学习下。二、解决过程这里【东哥】给出了解答,其实这个题目就是在考你装饰器的内容。代码如下:count0defwrapper(func):definner(args,kwargs):g

Python列表中的深浅拷贝,你学废了嘛?

大家好,我是皮皮。一、前言前几天在Python最强王者交流群有个叫【Chloe】的粉丝问了一个Python深浅拷贝的问题,这里拿出来给大家分享下,一起学习下。二、解决过程深浅拷贝这个东东在列表中挺烦人的,傻傻分不清楚,不过不慌,明白了之后,就不难了。那么再看上面那道题目,【Chloe】先copy了才改变了list1的值,所以lst2的第二个元素还是20。