Python list,dict問題解答

petterchx發表於2021-09-09

問題:

編寫一個函式 most_prolific,其將採用與上述 Beatles_Discography 示例相同的字典格式,並返回釋出最多專輯的年份。如果在 Beatles_Discography 中呼叫該函式,那麼應返回 1964 年,這一年相對於其他年份發行的唱片數量較多一些。

from builtins import list
from collections import Counter

Beatles_Discography = {"Please Please Me": 1963, "With the Beatles": 1963,
"A Hard Day's Night": 1964, "Beatles for Sale": 1964, "Twist and Shout": 1964,
"Help": 1965, "Rubber Soul": 1965, "Revolver": 1966,
"Sgt. Pepper's Lonely Hearts Club Band": 1967,
"Magical Mystery Tour": 1967, "The Beatles": 1968,
"Yellow Submarine": 1969 ,'Abbey Road': 1969,
"Let It Be": 1970}

n=[]
for album_title in Beatles_Discography:
##print("title: {}, year: {}".format(album_title, Beatles_Discography[album_title]))
##print(type(n))
n.append(Beatles_Discography[album_title])
print(n)
n1=Counter(n)
print(n1,type(n1))
print(sorted(set(n1),key=lambda x:n1[x])[-1])

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4606/viewspace-2802638/,如需轉載,請註明出處,否則將追究法律責任。

相關文章