Maison  >  Article  >  développement back-end  >  Comment utiliser les instructions if-Else dans les compréhensions de listes Python ?

Comment utiliser les instructions if-Else dans les compréhensions de listes Python ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-06 04:32:02636parcourir

How to Use if-Else Statements in Python List Comprehensions?

Comment utiliser if-Else dans la compréhension de liste Python

Les compréhensions de liste sont un moyen concis d'effectuer des opérations complexes sur des listes. Ils permettent de créer une nouvelle liste basée sur les valeurs d'une liste existante. Cependant, vous devez parfois modifier conditionnellement les éléments de la nouvelle liste en fonction d'une certaine condition.

Par exemple, considérons le scénario suivant : vous avez une liste de nombres appelée l et vous souhaitez ajouter 1 à nombres supérieurs ou égaux à 45, et ajoutez 5 aux nombres inférieurs à 45.

La syntaxe pour y parvenir en utilisant la compréhension de liste est la suivante :

<code class="python">[x+1 if x >= 45 else x+5 for x in l]</code>

Cependant, en utilisant le if- L'instruction else dans une compréhension de liste peut entraîner une erreur de syntaxe. Pour résoudre ce problème, vous devez utiliser une syntaxe étendue qui consiste à encapsuler l'instruction if-else entre crochets :

<code class="python">[if x >= 45 then x+1 else x+5 for x in l]</code>

Cette syntaxe remplace efficacement les mots-clés if et else par le mot-clé then.

Dans votre cas spécifique, la compréhension de la liste mise à jour serait :

<code class="python">[if x >= 45 then x+1 else x+5 for x in l]</code>

Cela renverra le résultat souhaité :

<code class="python">[27, 18, 46, 51, 99, 70, 48, 49, 6]</code>

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