自己码的 记录下思路
a = [
"my", "skills", "are", "poor", "I", "am", "poor", "I",
"need", "skills", "more", "my", "ability", "are",
"so", "poor"
]
dict_a={}
#创建一个空字典,用以存放后面的元素:重复次数
set_a=set(a)
#将列表a转化成集合a,这一步是代码最简单的去重(集合不允许有重复元素)
for i in set_a:
#循环遍历集合set_a中的每一个元素
dict_a[i]=a.count(i)
#集合set_a里的元素必然是在列表a中,a.count(i)得到该元素出现的次数
#在将i作为key,次数作为value,添加到字典中
#得到一个a中所有元素:次数的字典
list_b=list(dict_a.items())
# 获取字典dict_a中所有的键值对,但是此时不可操作,需要用list()转换为列表格式
# 列表list_b中的内容为[('元素名',1),........],列表list_b里的每一个元素是一个元组
list_c=sorted(list_b,key=lambda x:x[1],reverse=True)
# sorted()函数排序,key定义按照list_b中每个元素(元组)的第二个数据(下标1)进行降序排列
# sorted()函数返回的是一个新的列表,所以需要另外定义一个变量接收
# 最后应该还要加上一个判断,如果次数最多的元素存在并列的情况,则要都打印出来
for i in list_c:
if i[1]==list_c[0][1]:
print(i[0])
else:
break