Python リストについて細かく知ろう

 

Pythonは、リストで値を格納できます。

リストの仕組みを知ることで、多くの値を扱えるようになります。

リストの中の値を簡単に取り出すことができ多くのデータを扱えるようにもなります。

 

ここでは、

Pythonのリスト
リストの値の要素を取得するやり方

について知れます。

リストとは

Pythonの変数では型に応じた値を入れることができたと思います。

しかし、複数の値を入れる場合は変数ではなくリストを使います。

 

例えば変数で’hello’という文字を入れたとしても次の文字列が欲しい場合はもう一度ほかの変数を定義しなくてはなりません。

このように変数は一つ以上の値をいれることができないのでリストという変数の値が多く入る箱が必要です。

リストは多くの値を入れる箱だと思ってください。

リストを定義してみよう

リストの定義の仕方は変数の定義と同じですが、‘[]’という角括弧を用います。

リストの値を複数入れるには,を使い値を区切ることができます。

リスト名 = [値,値,・・・]

 

値は変数の型である全部の型を自由に入れることができます。

Pythonで実際の例を示してみましょう。

list_01 = ['hello','jon','apple',5,10,True]

listの中身に特に意味はありませんが、型を自由に定義することができます。

このlistの中身を見る場合print関数で表示できます。

print(list_01)

インタプリタで実行している場合は、list_01だけで表示されます。

リストの値を取得

リストの値を参照して表示したい場合があります。

リストの構造はインデックス要素と呼ばれ主に番号で指定できます。

 

リストの最小インデックスは0から始まります。

[0,1,2,・・・] 

リストのインデックスはそのようになり値を取得するには番号で取得できます。

先ほどのリストの値を取得する例を示しましょう。

print(list_01[0])

結果はhelloになります。

hello

リストの値を取得するようには[]の間にインデックス番号を入れることでうまく表示されると思います。

スライスを使った値の取得

リストの値の取得にはインデックス番号の他に、スライスを使って取得できます。

スライスはインデックスにある文字列などから部分的な要素を取り出すことができます。

 

リストの要素で全てを取り出す場合は[:]を使います。

list_02 = ['hello','jon','apple',5,10,True]
print(list_02[:])

結果はlistの要素すべてが表示されます。

['hello', 'jon', 'apple', 5, 10, True]

 

スライスは特定の要素を取り出す時にはインデックスやオフセット番号よりも指定しやすいです。

スライスの書式があることで分かりやすいと思うので例を示してみましょう。

[start:end:step]によってインデックス番号を入れます。
例:
[start:] startインデックスから末尾までの要素を取り出せる。
[:end]   先頭からend-1までの要素を取り出せる。-1は末尾のこと。
[start:end] startインデックスからend-1インデックスまでの要素を取り出せる。
[start:end:step] stepごとにstartインデックスからend-1までの要素を取り出せる。
[:]   先頭から末尾までの全体の要素をとり出せる

 

例を示したように取り出したいスライスを指定するだけで取り出せます。

listを例にスライスで取り出す例を示してみましょう。

print(list_02[2:]) #2番目要素から末尾まで取り出します。
print(list_02[:4]) #先頭から4番目まで取り出します。
print(list_02[2:4]) #2番目から4から1引いた3番目までの要素を取り出します。
print(list_02[0:4:2]) #0番目から2づつ4-1番目までの要素を取り出します。
print(list_02[:]) #先頭から末尾まですべての要素を取り出します。
print(list_02[-1]) #末尾を-1として取り出します。

 

リストの要素を追加や変更

リストは定義して追加することができます。

追加するにはappend関数で追加できます。

 

appendで末尾へ値を追加できます。

list_02.append('world')

 

リストを変更するには、スライスで変更したい値を指定することでできます。

list_02[3:5] = [10,15]

 

リストを削除したい場合はスライスで指定して消すこともできます。

list_02[:] = []

 

まとめ

リストは複数の値を入れることができます。

様々な型を格納することで一つの変数よりも便利になります。

リストの要素を取り出すには、インデックス番号やスライスによって取得できます。

スライスを使うことで、簡単にリスト内の要素を変更し、append関数で追加します。