Évaluation des contextes booléens en Python : pourquoi list.append() renvoie False
Python propose une approche unique pour évaluer des objets dans des contextes booléens. Lorsqu'il est confronté à un conteneur, tel qu'une liste, il évalue sa véracité selon qu'il contient ou non des éléments. Par conséquent, une liste vide est intrinsèquement fausse, tandis qu'une liste non vide est vraie.
Cependant, la méthode list.append() présente une énigme intéressante. Son objectif principal est de modifier la liste en ajoutant un élément. Étonnamment, dans un contexte booléen, list.append() est évalué à False.
Dévoilement de la justification
La raison fondamentale de ce comportement réside dans l'adhésion de Python à la commande -Principe de séparation des requêtes. Ce principe veut que les méthodes qui modifient les structures de données ne renvoient pas de valeur significative. Par conséquent, la plupart des méthodes de mutation en Python, y compris list.append(), renvoient None.
Exceptions à la règle
Bien que la norme soit que les mutateurs renvoient Aucun, il y a des exceptions occasionnelles. Par exemple, pop, qui supprime un élément d'une liste, renvoie la valeur supprimée. De telles exceptions sont introduites pour éviter un code coûteux ou encombré dans les situations où la récupération de la valeur modifiée est critique.
Application du principe à list.append()
Application de ce principe à list.append(), il devient évident qu'il n'y a aucune raison pratique de s'écarter de la convention de renvoyer None. Après tout, la liste modifiée elle-même est directement disponible pour le programmeur. Renvoyer une valeur booléenne ne ferait qu'introduire une ambiguïté, rendant le code moins simple à comprendre.
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!