pythonのリスト内包表記とは何ですか

リストの理解を最初に見たとき、混乱するかもしれません。これらは、リストを作成して使用するための優れた方法です。他の人のコードにリスト内包表記が表示される可能性があるため、リスト内包表記を理解すると便利です。次のリストの理解を理解しましょう。

番号のリストの導出

以前に学んだことを思い出して、次のように最初の10個の数字を含むリストを作成できます。

squares =[]for number inrange(1,11):
 new_square = number**2
 squares.append(new_square)for square in squares:print(square)

上記のコードでは、10個の番号のリストを作成し、各番号を2乗して、新しい配列に格納する機能を実装しました。コードは少し冗長です。コードを簡略化するために、forループのnew_squareパラメーターを省略できます。以下に示すように、リスト内包表記を使用すると、コードをさらに簡略化できます。

squares =[number**2for number inrange(1,11)]for square in squares:print(square)

二乗操作と新しいリストを生成するプロセスは、1行のコードに凝縮されています。あなたはめまいがしますか、このコード行に何が起こったのか見てみましょう。

まず、squaresという名前のリストを定義します。

次に、リスト内の括弧内のコードを確認します。

for number inrange(1,11)

1〜10の間にループを作成し、各番号を変数番号に格納します。次に、各ループの番号に対してどのような操作が行われるかを見てみましょう。

number**2

各数値は2乗され、結果は定義されたキューに格納されます。このコード行は、次の言語で読むことができます。

squares =[raise number to the second power,for each number in the range 1-10]

その他の例

前の例は、数値に対する二乗演算です。次のコードは、数値に対する乗算演算です。コードを注意深く読んで、数値リスト式の使用法を体験してください。

# Make an empty list that will hold the even numbers.
evens =[]
# Loop through the numbers 1-10, double each one, and add it to our list.for number inrange(1,11):
 evens.append(number*2)
# Show that our list is correct:for even in evens:print(even)

非番号リストの理解

数値以外のリストでも控除を使用できます。次の例では、番号以外のリストを作成し、控除を使用して新しいリストを生成します。控除なしのソースコードは次のとおりです。

# Consider some students.
students =['bernice','aaron','cody']
# Let's turn them into great students.
great_students =[]for student in students:
 great_students.append(student.title()+" the great!")
# Let's greet each great student.for great_student in great_students:print("Hello, "+ great_student)

以下に示す派生を記述したいと思います。

great_students = [add ‘the great’ to each student, for each student in the list of students]

コードは次のとおりです。

# Consider some students.
students =['bernice','aaron','cody']
# Let's turn them into great students.
great_students =[student.title()+" the great!"for student in students]
# Let's greet each great student.for great_student in great_students:print("Hello, "+ great_student)

拡張演習:

[[1,2,3]、[4,5,6] ....]のリストを生成します最大値は100以内です

まず、通常の状況でどのように書くべきかを考えます

a =[]for x inrange(1,100,3):
 a.append([x,x+1,x+2])

そしてそれをリスト内包表記に変換します

a =[[x,x+1,x+2]for x inrange(1,100,3)]

上記は、pythonリスト内包表記の詳細な内容です。pythonリスト内包表記の意味と使用法の詳細については、ZaLou.Cnの他の関連記事に注意してください。

Recommended Posts

pythonのリスト内包表記とは何ですか
pythonのイントロスペクションとは何ですか
pythonのオブジェクト指向とは何ですか
Pythonの匿名関数とは何ですか
Pythonのシーケンステーブルとは
pythonでのadbの機能は何ですか
Python変数スコープとは
pythonに関数のオーバーロードはありますか
Pythonでのrc1の意味
Pythonリスト理解操作例の概要
pythonのdefは何をしますか
Pythonの用途は何ですか
Python3リスト
Pythonの数字は何ですか?
Pythonのすべてがオブジェクトです
npはpythonで何をしますか
python言語のアルゴリズムはありますか
python変数の範囲は何ですか
pythonのid関数は何ですか
pythonのWeb開発フレームワークとは何ですか
自習用pythonに適したシステム
python開発の見通しは何ですか
pythonの数値は可変型ですか
pythonの関数本体は何ですか
Pythonは主にどの方向に使用されます
pythonにヘルパー関数はありますか
Pythonはリスト内の要素をランダムにシャッフルします
Python 3.9が登場!
pythonの関数
パイソンリスト学習
[902] pythonリストソート
Pythonマルチスレッドのリストを詳しく説明する
pythonのタブキーはどういう意味ですか
pythonとpycharmの違いは何ですか
なぜpythonが人気なのか
Pythonは短いクロール音楽です
同期Pythonと非同期Pythonの違いは何ですか?
03.Pythonエントリの演算子
エンタープライズ言語に対するpythonの利点は何ですか
Pythonはゆっくりと衰退しています
Pythonの無限ループに必要な条件
Pythonでできること
Pythonの結合関数
12.Python3でのネットワークプログラミング
pythonでステートメントを印刷する
pythonで番号のリストを理解する方法
Pythonでの同時リクエスト
Ubuntuにpythonをインストールする
Pythonでのコンテキスト管理
pythonの算術演算子
pythonでguiを書く
PythonでのMongoDBの使用
PythonのStr文字列
Pythonでの計算ジオメトリ
pythonでファイルを開く方法は何ですか
Pythonでの同時リクエスト(パート2)
pythonクラスの属性とは何ですか
pythonリスト(LIST)の深い理解
Pythonのタプルの添え字
pythonは解釈された言語ですか?
Pythonでの継承について話す