Vérification Python des éléments négatifs dans une liste
Python fournit une fonction polyvalente appelée any() qui s'avère pratique pour vérifier les conditions dans un séquence d'éléments. Dans ce cas, nous voulons déterminer si un élément d'une liste est négatif.
Utilisation de 'any()' :
if any(t < 0 for t in x): # do something
La fonction any() prend une expression génératrice comme argument, dans ce cas (t < 0 pour t dans x). Pour chaque élément t de la liste x, cette expression génératrice renvoie True si t est négatif, sinon elle renvoie False. La fonction any() évalue cette expression génératrice et renvoie True si au moins un élément donne True.
Utilisation de 'True in ...' :
Bien que techniquement correct , l'approche consistant à utiliser True in ... n'est pas considérée comme pythonique car elle peut être inefficace. Au lieu de revenir plus tôt, l'expression du générateur parcourra toute la séquence, gaspillant potentiellement des ressources.
Si vous devez utiliser True dans ..., enveloppez l'expression du générateur dans une compréhension du générateur pour l'efficacité de la mémoire :
if True in (t < 0 for t in x):
Avec cette approche, la compréhension du générateur ne progresse que si nécessaire et ne consomme pas de mémoire inutile.
N'oubliez pas que lorsque vous vérifiez des conditions positives, vous pouvez exploiter De La loi de Morgan consistant à n'utiliser ni any() ni all(), qui renvoie True lorsque tous les éléments satisfont à la condition.
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!