Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ Pythonにおけるリストのインデックス指定:要素への効率的なアクセス | Pythonリストの習得
/
Pythonデータ構造
セクション 1.  2
single

single

bookPythonにおけるリストのインデックス指定:要素への効率的なアクセス

メニューを表示するにはスワイプしてください

Pythonでは、リストの各要素にインデックスを使ってアクセス可能。インデックスは0から始まり、リストの最初の要素がインデックス0、2番目の要素がインデックス1となる。これをゼロインデックスと呼ぶ。要素にアクセスするには、角括弧内に目的のインデックスを指定する。

1234567
cities = ["Rome", "London", "New York", "Brasilia", "Kioto"] # Getting the first element print(cities[0]) # Getting the third element print(cities[2])
copy

次の例では、インデックス0は最初の要素「Rome」を返し、インデックス2は3番目の要素「New York」を返す。インデックスは位置から1を引いた値(n - 1)に対応。

負のインデックス

Pythonは負のインデックスにも対応しており、リストの末尾から要素にアクセス可能。ここで-1は最後の要素、-2は最後から2番目の要素を表す。リストの長さが分からない場合でも末尾から操作できるため、負のインデックスは非常に便利。

1234567
cities = ["Rome", "London", "New York", "Brasilia", "Kioto"] # Getting the last element print(cities[-1]) # Getting the fourth element print(cities[3], cities[-2])
copy

解説:

  1. -1 は最後の要素「Kioto」を取得;
  2. 3-2 はどちらも4番目の要素「Brasilia」を指し、ひとつは正のインデックス、もうひとつは負のインデックスを使用。インデックスがリスト内で循環する仕組みを示している。

正と負のインデックスを使うことで、リストの先頭や末尾から柔軟に要素へアクセス可能。

ネストされたリストのインデックス指定

ネストされたリストの要素にアクセスするには、複数のインデックスが必要。最初のインデックスでサブリストを選択し、次のインデックスでそのサブリスト内の特定の要素にアクセス。

1234567891011121314
cities = [ ["Paris", "France", 2000], ["Tokyo", "Japan", 3000], ["New York", "USA", 2500] ] # Accessing the first sublist print(cities[0]) # Output: ['Paris', 'France', 2000] # Accessing the city name in the second sublist print(cities[1][0]) # Output: Tokyo # Accessing the cost of the trip in the third sublist print(cities[2][2]) # Output: 2500
copy

ネストされたリストのインデックス指定の応用例として、スプレッドシート行列データベースなどの構造化データが挙げられる。実用的な例としては、2次元行列の行や列へのアクセス、従業員記録リストからの詳細情報の取得、旅行日程やネストされたJSONのような構造から都市名や費用など特定の情報を抽出することがある。

タスク

スワイプしてコーディングを開始

リスト cities が与えられています。

  • インデックスを使用して、配列の2番目の要素で変数 second を初期化してください。
  • インデックスを使用して、配列の最後の要素で変数 last を初期化してください。

注意

最後の要素に簡単にアクセスするには、負のインデックスを使用できます。

解答

Switch to desktop実践的な練習のためにデスクトップに切り替える下記のオプションのいずれかを利用して、現在の場所から続行する
すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 1.  2
single

single

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

some-alt