Maison  >  Article  >  développement back-end  >  Comment résoudre les erreurs de syntaxe dans les compréhensions de listes avec des instructions conditionnelles ?

Comment résoudre les erreurs de syntaxe dans les compréhensions de listes avec des instructions conditionnelles ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-22 12:38:03561parcourir

How to Resolve Syntax Errors in List Comprehensions with Conditional Statements?

Correction de la syntaxe pour la compréhension de liste avec des instructions conditionnelles

Lorsque vous essayez d'utiliser une compréhension de liste pour comparer deux itérables et afficher les éléments qui apparaissent dans les deux cas, vous pouvez rencontrer une erreur de syntaxe si l'instruction conditionnelle n'est pas placée correctement.

Dans l'extrait de code fourni, l'erreur se produit car la condition if (y pas dans b) est écrite avant l'instruction for. La syntaxe correcte pour une compréhension de liste avec une condition if est de placer l'instruction conditionnelle après l'instruction for, comme indiqué ci-dessous :

<code class="python">[y for y in a if y not in b]</code>

Ce code révisé parcourra correctement chaque élément y dans l'itérable a et n'inclure que les éléments qui n'existent pas dans l'itérable b. En conséquence, il affichera ['r'] comme prévu.

Vous pouvez également utiliser un opérateur ternaire if-else pour obtenir le résultat souhaité, comme indiqué ci-dessous :

<code class="python">[y if y not in b else other_value for y in a]</code>

Dans ce cas, l'autre_valeur sera imprimée pour tout y existant dans b.

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