Python リスト内包表記の if...else
Muhammad Waiz Khan
2021年7月18日
このチュートリアルでは、Python の if ... else
文を使ってリスト内包を実行する複数の方法を説明します。リスト内包とは、既存のリストに基づいてリストを作成する短くて構文的な方法です。通常、現在のリストからフィルタリングされた新しいリストや変更されたリストを作成するために使用されます。
例えば、python のリスト ['Ali','Mark', None, 'Sara', None, 'Rahul']
があり、新しいリスト ['Ali','Mark', '', 'Sara', '', 'Rahul']
を作成したい場合、リスト内包を利用することで作成できます。
Python リスト内包表記の if…else
以下の例では、if ... else
文を用いたリスト内包を用いて既存のリストから変更されたリストを作成する方法を示しています。
my_list = ["Ali", "Mark", None, "Sara", None, "Rahul"]
new_list = [str(x.strip()) if x is not None else "" for x in my_list]
print(new_list)
出力:
['Ali', 'Mark', '', 'Sara', '', 'Rahul']
Python における if ... else
を用いたリスト内包表記の一般的な構文は以下の通りです。
[f(x) if condition else g(x) for x in list]
リスト要素 x
に対して condition
が真ならば、該当する関数 f(x)
が適用され、そうでなければ g(x)
が適用されています。
コード例:
my_list = ["Ali", "Mark", None, "Sara", None, "Rahul"]
new_list = [x.upper() if x is not None else "" for x in my_list]
print(new_list)
出力:
['ALI', 'MARK', '', 'SARA', '', 'RAHUL']