python

【python】list(リスト型)

他のプログラミング言語同様、Pythonにも複数の要素(数や文字列)を内包するデータ型があります。その1つがリストと呼ばれるものです。リストは[要素1,要素2 ….,要素N]のように作ります。

リスト型の宣言方法

要素を指定してリストを作成する

要素を入力から受け取りリストを作成する

要素を入力から受け取りリストを作成する

リストのリストを作成する

リストの要素を取り出す(インデックス指定+スライス機能)

文字列は添字表記(インデックス表記、つまり、ある文字列の何文字目かを指定)することができます。 最初の文字は 0番目 になります。 添字には負の数を指定するこもでき、その場合は右から数えます。ただし、0と-0は等しいので、負の添字は-1から始まることに注意してください。

スライスとは、リストに入っている要素のうち、連続した複数の要素を指定する記法です

リスト名[指定する範囲の始めのインデックス:指定する範囲の終わりのインデックス+1]

リストの連結

リストの追加

末尾に要素を追加する

リストの変数名の後ろに.append(x) と記述することでリストの末尾に新しい要素 x を追加することができます。

行の末尾に追加する

列の末尾に追加する

2次元配列などの多次元配列などには、行だけではく、列にも要素を追加したい時があります。

指定したところに要素を追加する

リストの変数名.insert(i, x) はインデックス i 番目に要素 x を追加します。

指定した行に追加する

指定した列に追加する

末尾にシーケンス(複数の要素)を追加する

リストの変数名.extend(x)はリストの末尾にシーケンスxを追加します

 

リストの置き換え・削除

文字列と違って、リストは要素の変更が可能

・clear() 全ての要素を削除できる

要素を削除する

リストの変数名.remove(x) はリストの中でxと等しい最初の要素を削除します。



リストの中に要素が含まれているか確認する

リストの変数名.index(x) は、リスト中で値x を持つ最初の要素のインデックスを返します。

リストの要素をソートする

昇順にソートする

リストの変数名.sort() はリスト内の要素をソート(昇順に整列)します。

降順にソートする

降順ソートする場合は.sort(reverse=True) とします。

逆順にソートする

リストの変数名.reverse() はリスト内の要素を逆順にします。

ソート順をカスタマイズする

ここでは、a[i][2]を文字列順でソートしています

今あるリストをコピーして新しいリストを作成する

リストの変数名.copy() を使って今あるリストをコピーします。

javaや他の言語でもよくあるミス

Pythonの代入文=は基本的にコピーを生成しません。 このため lst1 も lst2 も同一のリスト(同じ id を持つ)になっています。javaでも同じことが起きるよ。javaでは、clone()メソッドを使うよ。詳しくは過去記事をご覧ください

実際に同一のリストなのかは lst1 is lst2 で調べることができます。

全てのクラスがの持っておくべきメソッド多くのインスタンスに共通して行える5つの基本操作 メソッド 操作の内容 関連するクラス toString...

リストの合計値、最大値、最小値、要素数を調べる

・sum() →合計値
・max() →最大値
・min() →最小値
・len() →要素数