Maison >développement back-end >Tutoriel Python >Comment puis-je comparer efficacement plusieurs variables Python à une seule valeur ?

Comment puis-je comparer efficacement plusieurs variables Python à une seule valeur ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-25 00:15:10991parcourir

How Can I Efficiently Compare Multiple Python Variables to a Single Value?

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

  • opérateur in : Vérifie si la valeur sur le le côté gauche fait partie de l'ensemble spécifié sur le côté droit.
  • Ensemble : une collection d'éléments uniques et non ordonnés entourés d'accolades ({ }). Dans ce cas, {x, y, z} crée un ensemble de variables données.

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

  • Concis : Réduit le nombre de lignes de code requises.
  • Efficace : utilise une seule expression booléenne pour évaluer plusieurs variables, ce qui accélère les temps d'exécution.
  • Généralisable : peut être facilement modifié pour tester différentes valeurs. ou au sein de différents ensembles de variables.

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!

Déclaration:
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