ホームページ  >  記事  >  バックエンド開発  >  Python リスト理解で if-else ロジックを使用する方法?

Python リスト理解で if-else ロジックを使用する方法?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-06 05:43:02868ブラウズ

How to Use if-else Logic in Python List Comprehension?

リスト内包表記での if-else ステートメントの利用

Python では、リスト内包表記により、リスト要素を変更およびフィルタリングする簡潔な方法が提供されます。よく遭遇する課題の 1 つは、この構造内に if-else ロジックを実装することです。この記事では、この障害を克服する方法について説明します。

構文エラー

次のようなリスト内包で if-else 構文を使用しようとした場合:

[x+1 for x in l if x >= 45 else x+5]

構文エラーが発生する可能性があります。これは、if-else ステートメントの標準 Python 構文では、if キーワードと else キーワードの後に​​対応するコード ブロックを使用する必要があるためです。

正しいアプローチ

リスト内包表記で if-else のような動作を実現するには、条件式構文を使用できます。

[expression_if_true if condition else expression_if_false for x in l]

例:

で提供されている例を考えてみましょう。リスト内の 45 以上の数値に 1 を加算し、45 未満の数値に 5 を加算する質問です。

l = [22, 13, 45, 50, 98, 69, 43, 44, 1]
result = [x+1 if x >= 45 else x+5 for x in l]

print(result)

Output:
[27, 18, 46, 51, 99, 70, 48, 49, 6]

この例では、条件式 x 1 if x >= 45 else x 5 は、x が 45 以上の場合、変更された値が x 1 になることを指定します。それ以外の場合は、x 5 にする必要があります。

以上がPython リスト理解で if-else ロジックを使用する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。