Pythonでリスト内包表記を使った高速な繰り返し処理の方法と応用例

この記事では、Pythonでのリスト内包表記を使った繰り返し処理について詳しく解説します。具体的なコード例とその解説、応用例を含めています。

目次

はじめに

Pythonには、リスト内包表記という強力な機能があります。この機能を使うと、繰り返し処理をより短いコードで、かつ高速に実行することが可能です。この記事では、基本的なリスト内包表記から応用例までを網羅します。

リスト内包表記の基本

基本的な形式

リスト内包表記の基本形は以下のようになります。

[expression for item in iterable]

このコードで、`iterable`から要素を一つずつ取り出して`item`に格納し、`expression`を評価した結果が新しいリストに格納されます。

基本例

次に、基本的な例を見てみましょう。

numbers = [1, 2, 3, 4, 5]
squared_numbers = [n ** 2 for n in numbers]
print(squared_numbers)  # 出力:[1, 4, 9, 16, 25]

この例では、`numbers`リストの各要素を二乗して、新しいリスト`squared_numbers`を生成しています。

応用例

条件を使ったリスト内包表記

条件式を用いて、特定の条件にマッチする要素だけを処理することもできます。

numbers = [1, 2, 3, 4, 5]
even_squared = [n ** 2 for n in numbers if n % 2 == 0]
print(even_squared)  # 出力:[4, 16]

複数のイテラブルオブジェクトを用いる

複数のイテラブルオブジェクトを同時に処理することも可能です。

list1 = [1, 2, 3]
list2 = [10, 20, 30]
result = [x + y for x in list1 for y in list2]
print(result)  # 出力:[11, 21, 31, 12, 22, 32, 13, 23, 33]

辞書やセットでの使用

リストだけでなく、辞書やセットでもリスト内包表記は使用できます。

words = ['apple', 'banana', 'cherry']
word_length = {word: len(word) for word in words}
print(word_length)  # 出力:{'apple': 5, 'banana': 6, 'cherry': 6}

まとめ

Pythonのリスト内包表記は、繰り返し処理を効率よく行う強力な機能です。基本形から応用まで幅広く利用できるため、Pythonプログラミングにおいては必須のテクニックといえるでしょう。

コメント

コメントする

目次