Maison > développement back-end > Tutoriel Python > Comment puis-je vérifier efficacement si un ou tous les éléments de la liste répondent à une condition spécifique en Python ?

Comment puis-je vérifier efficacement si un ou tous les éléments de la liste répondent à une condition spécifique en Python ?

Linda Hamilton
Libérer: 2024-11-24 15:28:13
original
312 Les gens l'ont consulté

How Can I Efficiently Check if Any or All List Elements Meet a Specific Condition in Python?

Vérifier efficacement si un élément d'une liste correspond à une condition

Votre extrait de code contient une boucle while qui parcourt une liste pour vérifier si l'un de ses éléments répond à une condition spécifique, en particulier si le dernier élément de chaque sous-liste est 0. Pour améliorer l'efficacité et la lisibilité, envisagez d'utiliser les fonctions intégrées de Python all() et any() pour gérer de telles vérifie.

Utilisation de all()

La fonction all() renvoie True si tous les éléments d'une liste sont évalués à True lorsqu'ils sont appliqués avec une condition donnée. Dans votre cas, pour vérifier si tous les éléments ont un indicateur de valeur 0, vous pouvez utiliser :

all(item[2] == 0 for item in list_)
Copier après la connexion

Cette expression renvoie True si toutes les sous-listes ont un indicateur de 0, et False sinon.

Utilisation de any()

D'un autre côté, la fonction any() renvoie True si un élément d'une liste est évalué à True lorsqu'il est appliqué avec une condition donnée. Pour vérifier si au moins une sous-liste a un indicateur de valeur 0 :

any(item[2] == 0 for item in list_)
Copier après la connexion

Cette expression renvoie True si l'une des sous-listes a un indicateur de 0, et False sinon.

Exemple d'utilisation

my_list = [[1, 2, 0], [2, 3, 1], [4, 5, 0]]
if all(item[2] == 0 for item in my_list):
    print("All flags are 0")
else:
    print("At least one flag is not 0")

if any(item[2] == 0 for item in my_list):
    print("At least one flag is 0")
else:
    print("No flags are 0")
Copier après la connexion

Dans cet exemple, le résultat serait :

At least one flag is not 0
At least one flag is 0
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal