si Python vide

La méthode max() ne fonctionne que si vous passez une séquence avec au moins une valeur dans la méthode.

Si vous essayez de trouver le plus grand élément dans une liste vide, vous rencontrerez l’erreur "ValueError : max() arg is a empty sequence‚".

Dans ce guide, nous expliquons ce que signifie cette erreur et pourquoi vous pouvez la rencontrer. Nous passons en revue un exemple pour vous aider à comprendre comment résoudre cette erreur.

ValueError : max() arg est une séquence vide

Le max() méthode vous permet de trouver le plus grand élément dans une liste. Elle est similaire à la méthode min() qui trouve le plus petit élément dans une liste.

Pour que cette méthode fonctionne, max() a besoin d’une séquence avec au moins une valeur. C’est parce que vous ne pouvez pas trouver le plus grand élément dans une liste s’il n’y a pas d’éléments. Le plus grand élément n’existe pas car il n’y a aucun élément à rechercher.

Une variation de la "ValueError : max() arg est une séquence vide‚" erreur est trouvée lorsque vous essayez de passer une liste vide dans la méthode min(). Cette erreur est "ValueError : min() arg est une séquence vide". Cette erreur min() se produit pour la même raison : vous ne pouvez pas trouver la plus petite valeur dans une liste sans valeurs.

Un exemple de scénario

Nous‚Äô Nous allons créer un programme qui trouve la meilleure note qu’un élève a obtenue dans tous ses tests de chimie. Pour commencer, définissez une liste d’étudiants :

Notre liste d’étudiants contient quatre dictionnaires. Ces dictionnaires contiennent les noms de chaque étudiant ainsi qu’une liste des notes qu’ils ont obtenues. Miranda n’a pas encore de notes car elle vient de rejoindre le cours de chimie.

81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi dans la technologie après avoir assisté à un bootcamp. Soyez associé à un bootcamp aujourd’hui.

Le diplômé moyen d’un bootcamp a passé moins de six mois en transition de carrière, du démarrage d’un bootcamp à la recherche de son premier emploi.

Ensuite, utilisez une boucle for pour parcourir chaque élève de notre liste d’élèves et trouver la note la plus élevée que chaque élève a obtenue et la note moyenne de chaque élève :

Nous utilisons le max() pour trouver la meilleure note qu’un élève a obtenue. Pour calculer la note moyenne d’un étudiant, nous divisons le total de toutes ses notes par le nombre de notes qu’il a reçues.

Nous arrondissons la note moyenne de chaque élève au nombre entier le plus proche en utilisant la méthode round().

Exécutez notre code et voyez ce qui se passe :

Notre code s’exécute avec succès jusqu’à ce qu’il atteigne le quatrième élément de notre liste. Nous pouvons voir les notes les plus élevées et moyennes de Ron, Katy et Rachel. Nous ne pouvons voir aucune valeur pour Miranda.

La solution

Notre code fonctionne sur les trois premiers étudiants car chacun de ces étudiants a une liste de notes avec au moins une note. Miranda n’a pas encore de notes.

Parce que Miranda n’a pas de notes, la fonction max() ne s’exécute pas. max() ne peut pas trouver la plus grande valeur dans une liste vide.

Pour résoudre cette erreur, voyez si chaque liste de notes contient des valeurs avant d’essayer de calculer le note la plus élevée dans une liste. Si une liste ne contient aucune valeur, nous devrions afficher un message différent à l’utilisateur.

Utilisons une déclaration "if‚" pour vérifier si un élève a des notes avant de jouer tous les calculs :

Notre code ci-dessus ne calculera la note la plus élevée et la moyenne d’un étudiant que s’il a obtenu au moins une note. Sinon, l’utilisateur sera informé que l’étudiant n’a obtenu aucune note. Exécutons notre code :

Notre code calcule avec succès les notes les plus élevées et moyennes pour nos trois premiers étudiants. Lorsque notre code atteint Miranda, notre code ne calcule pas ses notes les plus élevées et moyennes. Au lieu de cela, notre code nous informe que Miranda n’a pas encore obtenu de notes.

Conclusion

L’argument "ValueError : max() est une séquence vide&rdquo ; une erreur est générée lorsque vous essayez de trouver le plus grand élément dans une liste vide à l’aide de la méthode max().

Pour résoudre cette erreur, assurez-vous de ne transmettre que des listes avec au moins une valeur via une instruction max(). Vous avez maintenant les connaissances nécessaires pour résoudre ce problème comme un codeur professionnel !

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method