Python でのリスト内包表記の使用 | プログラミング学習 初心者向け入門ガイド

ホーム › >>

Python でのリスト内包表記の使用

記事掲載:https://laptrinhcanban.com/ja

Python でリスト内包表記を使用する方法。このレッスンの後、Pythonでのリスト内包表記の概念と、リスト内包表記を使用してリストを作成する方法を学習します。

Python のリスト内包表記とは

内部記述方法としても知られるPython のリスト内包表記は、他の言語では使用できない python でのみ使用できる特別な方法であり、非常に簡単な方法で python でリストを作成するのに役立ちます。

リストを操作していると、複雑な構造のリストを操作する必要がある場合がありますが、通常のリスト作成方法では、リストを初期化するために多くのコードが必要になります。

しかし、単純なものは複雑なものよりも優れているというpythonの原則を持つpython の創設者は、リスト内包表記を作成しました。これは、python だけが持つことができる特別な方法です。、必要なコード行を短縮し、瞬く間に複雑なリストを作成するのに役立ちます。

書くコードの行数を短くできることに加えて、Pythonのリスト内包法は処理速度が他の方法より速いとも言われています。

リスト内包表記を使用して Python でリストを作成する

Pythonで内包構文をリストする

上記のように、Python のリスト内包表記は主に Python でリストを作成するために使用します。

リストの理解は単純なリストを作成するのに役立つだけでなく、複雑な多次元リストを作成することもできますが、従来のリスト作成方法では、それを完成させるために多くの処理が必要です。.

Python でリスト内包表記を使用して、次の構文でリストを作成します

[expression for variable in iterable]

そこで:

  • iterable: リスト、タプル、範囲、セットなど、Python の多くの要素を含むオブジェクト
  • variable: iterableから取得した要素の値を割り当てる変数
  • expression: variable変数で計算する式

処理プロセスについて:

  1. for ステートメントを使用して iterableの要素を順番に取得し、その要素の値をvariable変数に割り当てます。
  2. expression式を使用して、 variable 変数で計算を行い、結果を出力します。
  3. 上記の結果は、新しいリストに要素を作成するために使用されます。

リスト内包表記を使用して Python でリストを作成する方法の例をいくつか見てみましょう。

Python でのリスト内包表記の具体的な使用例

1から5までの数字のリストを作る

通常の方法

old_list = list(range(0,6))
comprehension_list = []

for phantu in old_list:
comprehension_list.append(phantu)

Python でリスト内包表記を使用する

comprehension_list = [number for number in range(0,6)]

どちらも同じ結果になります。

print(comprehension_list)
#>>[0, 1, 2, 3, 4, 5]

ご覧のとおり、結果は同じですが、リスト内包表記を使用すると、コードを短くして、必要な労力を減らすことができます。

1 から 5 までの数字の 2 乗を要素とするリストを作成する

通常の方法

old_list = list(range(0,6))
comprehension_list = []

for phantu in old_list:
phantu_moi = phantu**2
comprehension_list.append(phantu_moi)

Python でリスト内包表記を使用する

comprehension_list = [number**2 for number in range(0,6)]

どちらも同じ結果になります。

print(comprehension_list)
#>> [0, 1, 4, 9, 16, 25]

異なる文字列のリストを指定して、LOWER (小文字) 形式の文字列で新しいリストを作成します。

この問題を解決するには、lower() メソッドを組み合わせて、python 文字列の大文字を小文字に変換する必要があります。

次のように、Python でリスト内包表記を使用します。

list_thanhpho = ['Long An', 'Ha Noi','Nam Dinh']
list_thanhpho_thuong = [thanhpho.lower() for thanhpho in list_thanhpho]

print(list_thanhpho_thuong)
#>> ['long an', 'ha noi', 'nam dinh']

通常の記述では、式が複雑になればなるほど、コーディングする必要がある行数が増えることがわかります。
しかし、リスト内包表記を使用すると、問題を解決するために必要なコードは 1 行だけです。
IT’S SO COOL

リスト内包表記 python での自己生成関数の使用

上記ではlowerupper、足し算、引き算、掛け算、割り算などの python の組み込み関数を計算式で使用しました。
組み込み関数を使用するだけでなく、カスタム関数を使用して、次の例のようにリスト内包表記 python で計算式を指定することもできます。

与えられた整数のリストがあります。各整数の累乗を要素として新しいリストを作成しましょう

list_số = list(range(11))

#独自の累乗関数を作成します。
def tim_luy_thua(số):
return số ** 2

# 新しく作成した関数でリスト内包表記を使用します。
list_mới = [tim_luy_thua(số) for số in list_số]

print(list_mới)
#>[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

動物の名前のリストを指定して、4 本足の動物の名前を含む新しいリストを作成します。.

list_animal = ['犬', '猫', '蛇', '象', '魚']

##Tự tạo một hàm tìm thú bốn chân
def tim_thu_bon_chan (animal):
if animal in ['犬', '猫','象']:
return animal

# 新しく作成した関数でリスト内包表記を使用します。
thu_bon_chan = [animal for animal in list_animal if tim_thu_bon_chan(animal)]

print(thu_bon_chan)
#>['犬', '猫', '象']

IF関数を使用した Python でのリスト内包表記の使用

Python で条件付き関数のIFを使用してリスト内包表記を使用することもできます。
これで、IF関数の条件式が true の場合のみ、for ループが実行されて新しいリストの要素が作成されます。
書き込み構文は次のようになります。

[expression for variable in iterable if if_expression]

そこで:

  • iterable:リスト、タプル、範囲、セットなど、Python の多くの要素を含むオブジェクト。
  • variable:iterableから取得した要素の値を割り当てる変数です。
  • if_expression: forループの実行を継続するかどうかを検討する条件式です
  • expression: variable変数で計算する式です:

処理プロセスについて:

  1. for ステートメントを使用してiterableの要素を順番に取得し、その要素の値をvariable変数に割り当てます
  2. if_expression条件式を判定。 True の場合、for ループに進み、逆の場合はループをスキップ
  3. if_expressionがtrue の場合、expression式を使用し、variable変数を計算、結果を返します
  4. 上記の結果は、新しいリストに要素を作成するために使用されます。

次の具体例を見てみましょう。

元の数のリストから新しい偶数のリストを作成する

numbers = [0,1,2,3,4,5,6,7,8]
even_numbers = [num for num in numbers if num % 2 ==0]

リストの作成と range 関数を組み合わせて、上記の例を次のように非常に短く書くことができます。

even_numbers = [num for num in list(range(9)) if num % 2 ==0]

どちらも同じ結果になります。:

print(even_numbers)
#>> [0, 2, 4, 6, 8]

まとめ

Python でのリスト内包表記は、Pythonを記述する特殊な方法であるため、この記述に慣れていない場合は、理解するのが難しいことがあります。しかし、一度慣れると、中毒になり、通常の方法で書く必要がなくなることを保証します.
処理能力とコードを削減できるという利点があるため、Python で書かれたプロジェクトでは、このような書き方に多く遭遇する機会があります。今日もう一度例を練習して、Python でのリストの理解をマスターしてください。

そして、次のレッスンで Python の知識についてさらに学びましょう。

URL Link

https://laptrinhcanban.com/ja/python/nhap-mon-lap-trinh-python/list-trong-python/list-comprehension-trong-python/

この記事は役立つと思ったらいいね!とシェアをお願いします
">

ホーム  › >>

Profile
きよしです!笑

Author: Kiyoshi (Chis Thanh)

Kiyoshi was a former international student in Japan. After graduating from Toyama University in 2017, Kiyoshi is currently working as a BrSE in Tokyo, Japan.