La plupart des moyens concis de vérifier si une liste est vide ou ne contient que personne?
Je comprends que je peux tester: p> et: p> < Pré> xxx pré> Mais si la liste a un élément (ou plusieurs éléments), mais ces éléments / s ne sont pas: p>
4 Réponses :
Si vous êtes concerné par des éléments de la liste qui évaluent comme vrai: Si vous souhaitez vérifier strictement pour Aucun code>, utiliser filtre ( lambda x: x n'est pas aucun, myList) code> au lieu de filtre (aucun, myList) code> dans le si code> instruction ci-dessus. p> p>
Un moyen est d'utiliser Cela fonctionne aussi pour les listes vides. Plus généralement, pour tester si la liste ne contient que des choses qui évaluent à tout code> a > et une compréhension de liste: false code>, vous pouvez utiliser tout code> : p>
C'est probablement plus efficace, oui, mais en utilisant == code> n'est pas mauvais i>.
Vous pouvez utiliser la fonction tout () code> à tester. Tous les éléments ne sont pas: a = []
b = [None, None, None]
all(e is None for e in a) # True
all(e is None for e in b) # True
Vous pouvez directement comparer les listes avec == code>: