Tips

偶数のみを含む新しいリストを作成

リスト内包表記を活用することで、コードをより簡潔にし、可読性を高めるためのテクニックです。ループ処理を一行で記述することで、処理速度の向上にもつながります。

Python

リスト内包表記を活用することで、コードをより簡潔にし、可読性を高めるためのテクニックです。ループ処理を一行で記述することで、処理速度の向上にもつながります。

リスト内包表記で条件分岐を組み込む

リスト内包表記は、if 文を使用して条件に基づいて要素を含める/除外することができます。複雑なロジックを簡潔に表現するのに役立ちます。

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# 偶数のみを含む新しいリストを作成
even_numbers = [x for x in numbers if x % 2 == 0]
print(even_numbers) # Output: [2, 4, 6, 8, 10]

# 3の倍数は2倍にし、それ以外はそのままの数値でリストを作成
modified_numbers = [x * 2 if x % 3 == 0 else x for x in numbers]
print(modified_numbers) # Output: [1, 2, 6, 4, 5, 12, 7, 8, 18, 10]

注意点:

  • リスト内包表記は、複雑すぎるロジックを記述するのには適していません。可読性を損なう可能性があるため、複雑な処理は通常のループ処理を使用する方が良い場合があります。
  • ネストされたリスト内包表記は理解しにくくなる可能性があるため、できるだけ避けるようにしましょう。

おすすめポイント:

  • コードの可読性と簡潔性を向上させることができます。
  • 単純な条件分岐であれば、通常のループよりも高速に処理できる場合があります。
  • map()filter() 関数と組み合わせることで、より高度な処理を記述することも可能です。