見出し画像

Pythonの基礎#8「リスト型」

プログラムでは、似たようなデータをまとめて扱うことができます。例えば、テストの点数を変数だけで扱うと次のようになります。ちょっと冗長ですね。

そこで、Pythonではリスト型というデータ型を使って、多くのデータを簡単に扱うことができます。

リストは[](角かっこ)で括り、複数の値をカンマ区切りで並べたものです。一つ一つの値のことを「要素」と言いますね。要素は先頭を0番目、その次は1番目、その次は2番目といったように、インデックスを指定して取り出すことができます。

tensuu = [85,60,70,80,88] # -->リスト型変数:tensuu、点数はリストの要素
print(tensuu)
print(tensuu[0])    # ---> リストのインデックス0番目の「85」を表示
print(tensuu[3])    # ---> リストのインデックス3番目の「80」を表示
print(tensuu[10])   # ---> 存在しないインデックスを指定すると、エラーになる:IndexError

リスト型を定義したら、そのインデックスを超える要素を取ろうとしたらエラーになりますよ。(IndexError)
リスト型の中にリストを定義することもできるんです。

この時は、複数のインデックスを使います。最初のインデックスは、先頭から何番目のリストかを示し、次のインデックスは、そのリストの中のインデックスを示します。

tensuu1 = [[50,60,70,80],[51,61,71,81],[52,62,72,82]] # -->[リスト0,リスト1,リスト2]
# ---> リスト0が[50,60,70,80]、リスト1が[51,61,71,81]、リスト2が[52,62,72,82]となる
print(tensuu1[0][0])  # ---> 50はtensuu1[0][0]
print(tensuu1[2][0])  # ---> 52はtensuu1[2][0]

インデックスは、0から始まる整数値で表しますが、マイナスで表す場合があります。-1は末尾から1番目の要素を示します。-2は末尾から2番目の要素です。

Pythonでは、インデックスではスライスという機能を使用できます。スライスはインデックスの開始位置と終了位置をコロン(:)で区切って示し、開始位置から終了位置までの複数の要素を扱えます。
-終了位置のインデックスは取得要素に含まれません。
-コロンの前後のインデックスは片方もしくは両方を省略することができます。(開始位置を省略すると、開始位置は先頭、終了位置を省略するとリストの長さを指定したことになり、末尾までとなります)
-リストの長さは、len()の関数を使うと取得できます。
-スライスで指定するインデックスはリストの数を超えたものを指定してもエラーにはなりません。

tensuu2 = [100,90,80,70,60]
print(tensuu2[-1])  # -->末尾から1番目の値を表示
print(tensuu2[-2])  # -->末尾から2番目の値を表示
print(tensuu2[0:2]) # -->0番目から2-1番目まで扱えます
print(tensuu2[0:100]) # --->スライスで指定するインデックスはリストを超えたものでもエラーになりません
print(tensuu2[0:len(tensuu2)]) # --->len()関数は、引数で与えたリストの長さを返します

この記事が気に入ったらサポートをしてみませんか?