Comprendre les fonctions any et all de Python
Les fonctions any and all de Python sont des fonctions intégrées qui évaluent les itérables et renvoient une valeur booléenne basée sur le la véracité de leur elements.
any
any renvoie True si au moins un élément de l'itérable est True (ou différent de zéro pour les valeurs numériques). Il évalue l'itérable jusqu'à ce qu'une valeur True soit rencontrée ou que tous les éléments aient été épuisés.
all
all renvoie True uniquement si tous les éléments de l'itérable sont True. Si l'itérable est vide, all renvoie True. Il continue d'évaluer l'itérable jusqu'à ce qu'une valeur fausse soit rencontrée ou que tous les éléments aient été examinés.
vérité
Comprendre la véracité est crucial pour comprendre comment tout fonctionne. En Python, les valeurs sont considérées comme vraies si elles ne sont pas nulles, des chaînes vides ou Aucune (Null). Les valeurs Falsey incluent 0, les conteneurs vides et False lui-même.
Votre code
Dans votre code, vous utilisez la compréhension de liste :
[any(x) and not all(x) for x in zip(*d['Drd2'])]
Pour comprendre cette expression, cassons-la down:
Pourquoi False est renvoyé
Votre code renvoie [False, False, False] car il vérifie si au moins une valeur est vraie et simultanément toutes les valeurs ne sont pas vraies pour chaque tuple de la liste des tuples. Puisque les tuples de d['Drd2'] ont des éléments identiques, all(x) est True pour chaque tuple, ce qui ne rend pas all(x) False. Par conséquent, l'expression globale devient any(x) et not all(x) est évalué à False pour chaque tuple.
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!