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

Barbara Streisand
リリース: 2024-11-06 05:43:02
オリジナル
862 人が閲覧しました

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!