Die max()-Methode funktioniert nur, wenn Sie eine Sequenz mit mindestens einem Wert an die Methode ubergeben.
Wenn Sie versuchen, das größte Element in einer leeren Liste zu finden, wird der Fehler "ValueError: max()
arg is a empty sequence‚" angezeigt.
In diesem Handbuch sprechen wir daruber, was dieser Fehler bedeutet und warum Sie möglicherweise darauf stoßen. Wir gehen ein Beispiel durch, um Ihnen zu helfen, diesen Fehler zu beheben.
ValueError: max() arg is a empty sequence
Der max()
Methode können Sie das größte Element in einer Liste finden. Sie ähnelt der Methode min()
, die das kleinste Element in einer Liste findet.
Damit diese Methode funktioniert, mussen Sie max()
benötigt eine Sequenz mit mindestens einem Wert. Dies liegt daran, dass Sie das größte Element in einer Liste nicht finden können, wenn keine Elemente vorhanden sind. Das größte Element ist nicht vorhanden, da keine Elemente zum Durchsuchen vorhanden sind.
Eine Variation des "ValueError: max()
arg ist eine leere Sequenz‚" Fehler wird gefunden, wenn Sie versuchen, eine leere Liste an die Methode min()
zu ubergeben. Dieser Fehler ist "ValueError: min()
arg is a empty sequence‚". Dieser min()
-Fehler tritt aus demselben Grund auf: Sie können den kleinsten Wert in einer Liste ohne Werte nicht finden.
Ein Beispielszenario
Wir’ Wir werden ein Programm aufbauen, das die höchste Note ermittelt, die ein Schuler in allen Chemietests erhalten hat. Definieren Sie zunächst eine Liste der Schuler:
Unsere Schulerliste enthält vier Wörterbucher. Diese Wörterbucher enthalten die Namen der einzelnen Schuler sowie eine Liste der erzielten Noten. Miranda hat noch keine Noten, da sie gerade am Chemieunterricht teilgenommen hat.
81 % der Teilnehmer gaben an, dass sie sich nach dem Besuch eines Bootcamps hinsichtlich ihrer Berufsaussichten im Tech-Bereich sicherer fuhlten. Holen Sie sich noch heute ein Bootcamp.
Der durchschnittliche Bootcamp-Absolvent verbrachte weniger als sechs Monate im Karriereubergang, vom Beginn eines Bootcamps bis zur Suche nach seinem ersten Job.
Verwenden Sie als Nächstes eine for-Schleife um jeden Schuler in unserer Schulerliste durchzugehen und die höchste Note jedes Schulers und die Durchschnittsnote jedes Schulers zu finden:
Wir verwenden die max()
-Funktion, um die höchste Note zu ermitteln, die ein Schuler verdient hat. Um die Durchschnittsnote eines Schulers zu berechnen, dividieren wir die Summe aller seiner Noten durch die Anzahl der erhaltenen Noten.
Wir runden die Durchschnittsnote jedes Schulers mit der Methode round()
auf die n√§chste ganze Zahl.
Fuhren Sie unseren Code aus und sehen Sie, was passiert:
Unser Code läuft erfolgreich, bis er das vierte Element in unserer Liste erreicht. Wir können die höchsten und durchschnittlichen Noten von Ron, Katy und Rachel sehen. Wir können keine Werte fur Miranda sehen.
Die Lösung
Unser Code funktioniert bei den ersten drei Schulern, da jeder dieser Schuler eine Notenliste mit mindestens einer Note hat. Miranda hat noch keine Noten.
Da Miranda keine Noten hat, kann die Funktion max()
nicht ausgefuhrt werden. max()
kann den größten Wert in einer leeren Liste nicht finden.
Um diesen Fehler zu beheben, prufen Sie, ob jede Notenliste Werte enthält, bevor wir versuchen, den . zu berechnen höchste Note in einer Liste. Wenn eine Liste keine Werte enthält, sollten wir dem Benutzer eine andere Nachricht anzeigen.