概要
Python
のリスト内包表記では、簡潔な構文でリストを生成することができます。if/else
条件式をリスト内包表記に含めることで、条件に応じて異なる値をリストに追加することが可能です。本記事では、その使い方について具体的なコード例を交えて説明します。
基本構文
リスト内包表記における if/else
の構文は以下の通りです。
[f(x) if x is not None else '' for x in xs]
ここでは、x
が None
であれば空文字(''
)、それ以外は f(x)
をリストに追加します。
例: 条件に応じたリスト生成
xs = [1, None, 3]
result = [x if x is not None else 0 for x in xs]
print(result) # [1, 0, 3]
この例では、None
の代わりに 0
がリストに追加されています。
if
のみを使ったフィルタリング
単に条件を満たす要素だけをリストに追加したい場合は、else
を含めず、if
だけを使用します。
result = [x for x in xs if x is not None]
print(result) # [1, 3]
まとめ
Python
のリスト内包表記における if/else
条件式を使うことで、柔軟にリストの内容を制御できます。特定の条件に基づいて値を操作したり、リスト内の不要な要素をフィルタリングする際に便利です。