大家好,我是bug,一个普通的程序员。程序员的快速成长在于多实践、多产出、多分享、多链接。但是执行力太差,错失了很多好机会。什么时候开始都不晚,欢迎大家关注,见证一个普通程序员的成长。先在这里立个Flag,参与涛哥谈Python技术圈知识星球的每日作业签到,先坚持7天。问题:Day4Q16:写一个函数,统计传入的列表中每个数字出现的次数,并返回对应的字典。解决办法:要解决这个问题,首先要从标题上的信息入手。关键字是列表、数字、字典。分析发现函数入参类型为列表,需要学习Python的特点和常用函数。Python列表的元素类型与Java不同,需要提前声明,每个元素可以是不同的数据类型。在这道题中,列表的所有元素都是数字。为了统计方便,假设列表中的元素都是整数。字典用于函数返回值。字典是Python中特有的数据结构,需要学习。学完了,开始解决问题。解题思路:要统计列表中每个元素出现的次数,需要遍历列表,使用for循环。对于每个元素,记录字典中出现的次数。需要判断元素是否已经存在于字典的key中,使用if结合list的__contains__()函数来判断。统计列表元素出现次数的方法有两种:手工统计。使用list的count函数进行查询。从算法的角度,不知道有没有更高效的方法。有懂的欢迎评论指导。#Q16:013题:写一个函数,统计传入列表中每个数字出现的次数,并返回对应的字典。#命名习惯,变量和方法名用下划线分隔;类名首字母大写,驼峰命名。number_list=[1,1,0,2,3,4,5,2,1,3,5,3,5,1,2,3,5,6,87,8,95,3,4]#方法一:遍历元素,统计每个元素出现的次数defcount_list_element(array):result_return={}foriinarray:ifresult_return.__contains__(i):result_return[i]=result_return[i]+1else:result_return[i]=1returnresult_returnresult=count_list_element(number_list)print(result)#{1:4,0:1,2:3,3:5,4:2,5:4,6:1,87:1,8:1,95:1}#方法二:利用list的计数函数统计每个元素出现的次数defcount_list_element_2(array):result_return={}foriinarray:ifnotresult_return.__contains__(i):result_return[i]=array.count(i)returnresult_returnresult_2=count_list_element_2(number_list)print(result_2)#{1:4,0:1,2:3,3:5,4:2,5:4,6:1,87:1,8:1,95:1}总结:好了,Day4打卡结束,学习了python中list、dict、for循环、if判断的基本用法。如果你也在学习Python,欢迎大家一起交流bug。关注公众号虫子玩编程,一起来玩编程吧!
