Pythonのリストは非常に柔軟で強力なデータ構造です。リストの要素にアクセスするための「インデックス」と、複数の要素を取得するための「スライス」について学びましょう。
リストのインデックスは、リストの要素にアクセスするための整数の位置を指します。インデックスは0から始まります。以下のサンプルコードを見てみましょう。
# リストの定義
fruits = ['apple', 'banana', 'cherry', 'date', 'elderberry']
# インデックスを使って要素にアクセス
print(fruits[0]) # apple
print(fruits[2]) # cherry
print(fruits[-1]) # elderberry (負のインデックスは末尾からのアクセス)
fruits
というリストを定義しています。fruits[0]
で1番目の要素('apple')にアクセスしています。fruits[2]
で3番目の要素('cherry')にアクセスしています。fruits[-1]
は負のインデックスを使って、リストの末尾の要素('elderberry')にアクセスしています。スライスを使用すると、リストの特定の範囲の要素を取得できます。スライスの書き方はリスト[開始インデックス:終了インデックス]
です。ただし、終了インデックスは含まれません。
以下のサンプルコードを見てみましょう。
# スライスを使って要素を取得
print(fruits[1:4]) # ['banana', 'cherry', 'date']
print(fruits[:3]) # ['apple', 'banana', 'cherry'] (開始インデックスを省略)
print(fruits[2:]) # ['cherry', 'date', 'elderberry'] (終了インデックスを省略)
print(fruits[-3:]) # ['cherry', 'date', 'elderberry'] (負のインデックスを使用)
fruits[1:4]
で1番目から3番目の要素('banana', 'cherry', 'date')を取得しています。fruits[:3]
は開始インデックスを省略しており、リストの最初から3番目の要素までを取得します。fruits[2:]
は2番目の要素からリストの終わりまでを取得します。fruits[-3:]
はリストの末尾から3番目の要素から最後までを取得します。スライスでは、ステップを指定することもできます。書き方はリスト[開始インデックス:終了インデックス:ステップ]
です。
# ステップを使ったスライス
print(fruits[::2]) # ['apple', 'cherry', 'elderberry'] (2つおきに取得)
print(fruits[::-1]) # ['elderberry', 'date', 'cherry', 'banana', 'apple'] (逆順に取得)
fruits[::2]
はリスト全体を2つおきに要素を取得します。fruits[::-1]
はリストを逆順に取得します。これらの概念を用いて、Pythonでのリスト操作の幅を広げていきましょう。実際にコードを書いてみることで、理解を深めてください。