私は、国が辞書に現れる回数を数え、一番現れた国を返します。 1つ以上の国が最も多く現れれば、それは国のリストを返すべきです。Pythonは辞書の国を数えています
例辞書:フランス、イタリア、そしてスペインは、すべて一度だけ、この辞書に表示されているので、それらの国の一つではなく、2または3が登場していた場合
{'Leonardo da Vinci': [("Portrait of Isabella d'Este", 1499, 63.0, 46.0, 'chalk', 'France'), ('The Last
Supper', 1495, 460.0, 880.0, 'tempera', 'Italy')], 'Pablo Picasso': [('Guernica', 1937,
349.0, 776.0, 'oil paint', 'Spain')]}
機能は
countries_appeared_most(dictionary1())
['France', 'Italy', 'Spain']
を返す必要があります関数がその国だけを返す回数。私が下にある現在のコードは、一番表示されるアーティストを検索しますが、いくつかの小さな変更が、最も表示される国を返すのに役立つと信じています。誰にどのようにこれを行うにはアドバイスをしていますか?助けてくれてありがとう
コード:
def countries_appeared_most(db):
if not db:
return None
maxcount = max(len(v) for v in db.values())
themax = [k for k, v in db.items() if len(v) == maxcount]
themax.sort()
return themax
ありがとうございますカウンターをインポートせずにこれを行う方法?私はこの問題を明確にするべきだったが、私のコードは輸入に依存しない – warrior4223
@ warrior4223が編集した。 –
ありがとう、私はそれを感謝します。エラーカウンタが定義されていません。名前を別のものに変更しようとします。 – warrior4223