Pythonのリストは、正数や負数を含む様々な方法でインデックスを付けることができます。
この記事では、”-“マイナスパラメータを使って、リストの特定の要素にアクセスする方法について説明します。
この記事もチェック:Pythonのリストで要素のインデックスを取得する方法3つ
基本的なリストの構造と操作
リストは角括弧とその中の要素で定義されます.各要素はカンマで区切られます。
構文は以下の様な感じです。
list_name = [element_!, element_2, ..., element_n]
|
コード
int_list = [ 3 , 4 , 5 , 5 , 6 ] # a list containing all integers
char_list = [ 'a' , 'b' , 'c' , 'd' ] # al list of characters
str_list = [ "apple" , 'banana' , 'lemon' , 'orange' ] # a list of strings
|
リストインデックスとは?
インデックスは、どんなプログラミング言語でも、どんな線形データ構造でも基本的な単位です。
どのコンピュータでも、デフォルトのインデックスは0から始まり、n-1まで続きます。
ここでnは、それぞれのデータ構造における要素の総数を表します。
種類は以下の通りです。
-
- 正のインデックス。0から始まり、増加する
- ネガティブインデックス:最後の要素から始まり、探索のたびに末尾から頭へと移動します。
これらは、このデータ構造の個々の要素にアクセスするのに役立ちます。
次節で、その操作を見てみましょう。
リストにおける負のインデックス
今回のトピックのメインとなるポイントです。
リストにおける「-1」パラメータは、Pythonインタープリタに最後の要素からの操作であることを示すものです。
まず、インデックス番号を使って要素にアクセスする方法を見てみましょう。
1
2
3
4
|
my_list = [ 45 , 5 , 33 , 1 , - 9 , 8 , 76 ]
print (my_list[ - 1 ])
print (my_list[ - 2 ])
print (my_list[ - 3 ])
|
この記事もチェック:Pythonのリストの最初と最後の要素を取得する方法を解説する
負のインデックスを使ってリストのデータを取得する
1
2
3
|
76 8 -9 |
結果は以下の通りです。
my_list = [ 45 , 5 , 33 , 1 , - 9 , 8 , 76 ]
my_list.reverse() |
負のインデックスでリストを反転させる
組み込み関数 “reverse() “を使用します。
[76, 8, -9, 1, 33, 5, 45] |
結果は以下の通りです。
my_list = [ 45 , 5 , 33 , 1 , - 9 , 8 , 76 ]
my_list[:: - 1 ]
|
1を使ったリストの反転
[76, 8, -9, 1, 33, 5, 45] # reversed list |
結果は以下の通りです。
my_list = [ 45 , 5 , 33 , 1 , - 9 , 8 , 76 ]
my_list.pop( - 1 )
my_list |
この記事もチェック:Pythonのreversed関数を使ってリストを逆順に並び替える方法
負のインデックスを持つ要素を削除する
pop() 関数のパラメータに -1 を指定して、リストの最後の要素を削除すると、新しいリストが作成されます。
76 # popped out element
[ 45 , 5 , 33 , 1 , - 9 , 8 ] # new list returned
|
結果は、以下の通りです。
この記事もチェック:Pythonのsample関数を使ってリストからランダムに要素を抽出する方法
Pythonのリストでネガティブインデックスを利用するメリット
- コードの行数を減らし、逆引きを1行で済ませることができる。
-
- 複雑な演算を簡単にします。
-
- 複雑な操作が少なく、操作にかかる時間が短い。
まとめ
これで Python のネガティブインデックスに関するチュートリアルは終了です。
お役に立ったでしょうか?ご質問やご意見がありましたら、お気軽に下記までお寄せください。
お読みいただきありがとうございました。