条件付きステートメントを使用したリスト内包表記の構文エラーを解決するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-10-22 12:38:03
オリジナル
559 人が閲覧しました

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

条件文によるリスト内包表記の構文の修正

リスト内包表記を使用して 2 つの反復可能値を比較し、表示される項目を出力しようとする場合どちらの場合も、条件ステートメントが正しく配置されていない場合、構文エラーが発生する可能性があります。

提供されたコード スニペットでは、if 条件 (y が b にない) が for ステートメントの前に記述されているためにエラーが発生します。 if 条件を含むリスト内包表記の正しい構文は、以下に示すように、for ステートメントの後に条件ステートメントを配置することです。

<code class="python">[y for y in a if y not in b]</code>
ログイン後にコピー

この修正されたコードは、反復可能な a および反復可能な各要素 y を正しく反復します。 b. 反復可能オブジェクトに存在しない要素のみを含めます。結果として、期待どおり ['r'] が出力されます。

あるいは、以下に示すように、if-else 三項演算子を使用して目的の結果を達成することもできます。

<code class="python">[y if y not in b else other_value for y in a]</code>
ログイン後にコピー

この場合、other_value は b に存在する y に対して出力されます。

以上が条件付きステートメントを使用したリスト内包表記の構文エラーを解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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