Python: リストやタプルの各要素の値を取り出す
Pythonでリストやタプルの各要素の値を取得する場合は、 次のようにリスト名(タプル名)、角括弧[]、インデックスを使って記述します。
リスト名[インデックス] タプル名[インデックス]
リスト名やタプル名の後に角括弧[]を記述し、
角括弧[]の中に取得したい要素のインデックス(添え字)を指定します。
先頭の要素のインデックスは「0」、2番目の要素のインデックスは「1」です。
末尾要素(最後の要素)のインデックスは「len()関数の値 - 1」です。
要素値を取得する
次のサンプルコードでは、 インデックスを指定してリストの各要素の値を取得しています。
# リスト li = ["a", "b", "c"] # 先頭の要素 print(li[0]) # a # 2番目 print(li[1]) # b # 3番目 print(li[2]) # c # 末尾要素 num = len(li) - 1 print(li[num]) # c
タプルも同じように値を取得できます。
# タプル t = (1, 2, 3) print(t[0]) # 1 print(t[1]) # 2 print(t[2]) # 3 print(t[len(t) - 1]) # 3
マイナスの値を指定
インデックスにマイナスの値を指定することもできます。 「-1」を指定すると最後の要素、「-2」を指定すると最後から2番目の要素が取得できます。
li = ["a", "b", "c"] # 末尾要素 print(li[-1]) # c # 最後から2番目 print(li[-2]) # b
タプルも同じです。
t = (1, 2, 3) print(t[-1]) # 3 print(t[-2]) # 2
エラーとなるケース
リスト・タプル共に、要素数以上のインデックス(存在しない要素のインデックス) を指定した場合はエラーが発生します。
次のコードの場合リスト liの要素数は3なので、「3」以上のインデックスを指定するとエラーになります。 マイナスの場合は「-4」以下のインデックスだとエラーになります。 いずれの場合も「IndexError: list index out of range」のエラーが発生します。
li = ["a", "b", "c"] print(li[3]) # エラー(IndexError: list index out of range) print(li[-4]) # エラー(IndexError: list index out of range)