为什么没有统计所有提名者呀
vote=['鲁智深','柴进','宋江','吴用','林冲','卢俊义',\
'柴进','柴进','孙二娘','史进','吴用','卢俊义',\
'柴进','林冲','宋江','宋江','卢俊义','吴用','吴用']
vote2=[]
dic={}
for i in vote:
if i not in vote2:
dic.update({i:vote.count(i)})
vote2.append(i)
while i in vote:
vote.remove(i)
print(dic)
正确输出所有被提名者,返回键值对列表,排序后由高到低输出,如图
vote=['鲁智深','柴进','宋江','吴用','林冲','卢俊义',\
'柴进','柴进','孙二娘','史进','吴用','卢俊义',\
'柴进','林冲','宋江','宋江','卢俊义','吴用','吴用']
setv = list(set(vote))
sort = sorted([(vote.count(v),v) for v in setv],reverse=True)
for s in sort:
print(f'{s[1]}\t{s[0]}')
>>>
执行结果如下:
柴进 4
吴用 4
宋江 3
卢俊义 3
林冲 2
鲁智深 1
孙二娘 1
史进 1