Test de l'égalité de plusieurs variables par rapport à une valeur unique en Python
La tâche décrite consiste à comparer plusieurs variables (x, y, z) à un entier spécifique et générer une liste de lettres correspondantes. Le code fourni tente d'y parvenir en utilisant une série d'instructions if-elif, mais une approche plus concise et efficace est disponible.
Solution
Le malentendu réside dans le évaluation des expressions booléennes, qui sont traitées comme des expressions distinctes et non comme une comparaison collective. Pour tester plusieurs variables par rapport à une seule valeur, la syntaxe suivante doit être utilisée :
if 1 in (x, y, z):
Explication
L'utilisation de l'opérateur in garantit qu'une seule variable doit être testée pour son égalité par rapport à l'entier (dans ce cas , 1), simplifiant considérablement le code.
Avantages
Par conséquent, le code révisé pour générer la liste souhaitée devient :
x = 0 y = 1 z = 3 mylist = [] if 1 in {x, y, z}: mylist.append("c") if 2 in {x, y, z}: mylist.append("d") if 3 in {x, y, z}: mylist.append("f")
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!