Maison  >  Article  >  développement back-end  >  Comment `all()` et `any()` de Python peuvent-ils vérifier efficacement la cohérence des éléments de liste ?

Comment `all()` et `any()` de Python peuvent-ils vérifier efficacement la cohérence des éléments de liste ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-25 02:38:28921parcourir

How Can Python's `all()` and `any()` Efficiently Check for List Element Consistency?

Vérification de la cohérence des éléments d'une liste à l'aide de all()

Pour déterminer si tous les éléments d'une liste satisfont à une condition spécifique, la fonction intégrée de Python all() fournit une solution efficace. Considérons une liste composée de sous-listes avec trois éléments, où le dernier élément représente un indicateur.

my_list = [['a', 'b', 0], ['c', 'd', 0], ['e', 'f', 0], ...]

Traditionnellement, une boucle while peut être utilisée pour vérifier si l'indicateur d'une sous-liste est défini sur 0. :

def check(list_):
    for item in list_:
        if item[2] == 0:
            return True
    return False

Cette approche peut cependant s'avérer inefficace et sujette aux erreurs. Pour simplifier et accélérer le processus, all() vient à la rescousse.

all(item[2] == 0 for item in my_list)

L'expression est évaluée à True si tous les éléments de la liste ont leur indicateur à 0. À l'inverse, elle renvoie False si un sous- liste a un indicateur non nul.

Extension du concept

Si au lieu de vérifier 0 indicateur, nous voulions pour garantir qu'au moins un élément a un indicateur zéro, any() peut être utilisé :

any(item[2] == 0 for item in my_list)

Cette expression est évaluée à True si au moins un indicateur de sous-liste est défini sur 0.

Conclusion

L'utilisation de all() et any() pour vérifier la cohérence des éléments de liste rationalise le code et améliore ses performances. Il favorise la lisibilité, élimine le besoin d'itération explicite et garantit une évaluation fiable de la condition souhaitée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn