Dies ist eine modifizierte Version von "Finden wir den Maximalwert von Python", die ich neulich angesprochen habe. Hier sind die schlechten Punkte und Änderungen im vorherigen Code:
-Wenn alle Elemente in der Liste negativ sind, wird der Maximalwert 0. ・ Die Verarbeitungsgeschwindigkeit ist langsam
Ich habe versucht, Refactoring basierend auf den zwei schlechten Punkten
num = int(input("Wie viele Teile möchten Sie ersetzen??"))
value_list = [] #Bereiten Sie ein Array zum Speichern von Zahlen vor
for i in range(num):
value = int(input("Ersetzen Sie eine Nummer"))
value_list.append(value) #Fügen Sie der vorbereiteten Liste Werte hinzu
max_value = value_list[0] #Mit Listenelementen initialisieren
for i in range(num):
if value_list[i] > max_value:
max_value = value_list[i]
print(max_value) #Maximalwert ausgeben
Auswechslung(Vorher ändern)
while i < num:
value = int(input("Ersetzen Sie eine Nummer"))
value_list.append(value) #Fügen Sie der vorbereiteten Liste Werte hinzu
i += 1
Auswechslung(Nach der veränderung)
for i in range(num):
value = int(input("Ersetzen Sie eine Nummer"))
value_list.append(value) #Fügen Sie der vorbereiteten Liste Werte hinzu
Vergleich(Vorher ändern)
max_value = 0 #Initialisieren Sie den Maximalwert auf 0
i = 0
while i < num:
if value_list[i] >= max_value: #Vergleichen Sie die gespeicherten Nummern der Reihe nach
max_value = value_list[i]
i += 1
Vergleich(Nach der veränderung)
max_value = value_list[0] #Mit Listenelementen initialisieren
for i in range(num):
if value_list[i] > max_value:
max_value = value_list[i]
Durch Setzen des Anfangswertes auf das Eingabeelement wird der Maximalwert normal ausgegeben, auch wenn alle Eingabeelemente negativ sind. Durch den Wechsel von einer while-Anweisung zu einer for-Anweisung werden Initialisierung und Additionsverarbeitung nicht mehr verschwendet.
In den Kommentaren wurde darauf hingewiesen, dass Python eine Funktion hat, um den Maximalwert eines Objekts mit einem bestimmten Element zu ermitteln. Deshalb habe ich versucht, es sofort zu verwenden.
num = int(input("Wie viele Teile möchten Sie ersetzen??"))
value_list = [] #Bereiten Sie ein Array zum Speichern von Zahlen vor
for i in range(num):
value = int(input("Ersetzen Sie eine Nummer"))
value_list.append(value) #Fügen Sie der vorbereiteten Liste Werte hinzu
print(max(value_list))
Ausgabeergebnis
Wie viele Teile möchten Sie ersetzen?? 3
Ersetzen Sie eine Nummer-3
Ersetzen Sie eine Nummer-2
Ersetzen Sie eine Nummer-5
-2
Vielen Dank an alle, die uns ihre Meinungen und Vorschläge gegeben haben.
Recommended Posts