Wir vertreten Noten von Schlägern über eine Folge von Übereinstimmungen in einem zweistufigen Wörterbuch wie folgt:Python-Programm mit Wörterbuch
{
'match1':{
'player1':57,
'player2':38
},
'match2':{
'player3':9,
'player1':42
},
'match3':{
'player2':41,
'player4':63,
'player3':91
}
}
Jedes Spiel wird von einer Zeichenkette identifiziert wird, da jeder Spieler ist. Die Punktzahlen sind alle Ganzzahlen. Die mit den Übereinstimmungen verbundenen Namen sind nicht festgelegt (hier sind sie 'match1','match2','match3'
), noch sind die Namen der Spieler. Ein Spieler muss nicht haben eine Punktzahl in allen aufgezeichneten Spiele
eine Python-Funktion orangecap(d)
definieren, die ein Wörterbuch d
dieser Form liest und identifiziert den Spieler mit der höchsten Gesamtpunktzahl. Deine Funktion sollte ein Paar (playername,topscore)
zurückgeben, wobei Spielername eine string
ist, der Name des Spielers mit der höchsten Punktzahl und der Topscore ist integer
, die Gesamtpunktzahl von Spielername.
Die Eingabe erfolgt so, dass für die höchste Gesamtpunktzahl nie eine Verbindung besteht.
Zum Beispiel:
orangecap({'match1':{'player1':57, 'player2':38}, 'match2':{'player3':9, 'player1':42}, 'match3':{'player2':41, 'player4':63, 'player3':91}})
('player3', 100)
orangecap({'test1':{'Ashwin':84, 'Kohli':120}, 'test2':{'ashwin':59, 'Pujara':42}})
('Kohli', 120)
wie Programm in Python schreiben?
Bitte zeigen Sie, was Sie bisher versucht haben. –
Schritt 1: lernen Sie etwas Python; Schritt 2: Schreibe dieses Programm in Python; Schritt 3: ??? Schritt N: Profit! – ForceBru
def orangecap (d): gesamt = 0 für n in ["player1", "player2", "player3", "player4", "ashwin", "kohli", "pujara"]: for match in d .keys(): wenn n in d [übereinstimmen] .keys(): gesamt [n] = gesamt [n] + d [gesamt] [n] zurück (gesamt). Ich habe so viel nur ich habe keine Ahnung, wie weitergehen –