Pythonのリストは、単にデータを格納するだけでなく、そのデータを操作するための便利なメソッドを数多く持っています。メソッドとは、特定のデータ型(この場合はリスト)に属している、特別な関数のことです。
この記事では、リスト操作で特によく使われる4つの基本的なメソッド、index()
、append()
、insert()
、remove()
について解説します。
index()
メソッドで要素のインデックスを検索する
リスト内にある特定の要素が、どの位置(インデックス)にあるかを調べたい場合、index()
メソッドを使います。
# 太陽系の惑星リスト
planets = ["Mercury", "Venus", "Earth", "Mars"]
# "Earth" のインデックスを検索
earth_index = planets.index("Earth")
print(f"'Earth'はインデックス {earth_index} にあります。") # 出力: 'Earth'はインデックス 2 にあります。
index()
は、指定した値がリスト内で最初に見つかった位置のインデックスを返します。もしリスト内にその値が存在しない場合は、ValueError
というエラーが発生するので注意が必要です。
append()
とinsert()
でリストに値を追加する
リストに新しい要素を追加するには、append()
とinsert()
という2つの主要なメソッドがあります。
append()
メソッド:リストの末尾に追加する
append()
メソッドは、リストの一番最後に新しい要素を一つ追加します。
# やることリスト
todo_list = ["email check", "meeting preparation"]
print(f"追加前: {todo_list}")
# 新しいタスクを追加
todo_list.append("document creation")
print(f"追加後: {todo_list}")
実行結果:
追加前: ['email check', 'meeting preparation']
追加後: ['email check', 'meeting preparation', 'document creation']
insert()
メソッド:指定した位置に追加する
insert()
メソッドは、インデックスを指定して、リストの好きな位置に新しい要素を挿入します。insert(インデックス, 値)
の形で使います。
todo_list = ["email check", "document creation"]
print(f"挿入前: {todo_list}")
# インデックス1の位置に新しいタスクを挿入
todo_list.insert(1, "urgent meeting")
print(f"挿入後: {todo_list}")
実行結果:
挿入前: ['email check', 'document creation']
挿入後: ['email check', 'urgent meeting', 'document creation']
元々インデックス1にあった"document creation"
は、一つ後ろにずれます。
リストと文字列の違い
append()
やinsert()
のようなメソッドは、リストを直接変更します。しかし、文字列(string)は**イミュータブル(変更不可能)**なデータ型であるため、これらのメソッドは使えません。Python
message = "Hello" message.append(" World") # このコードはAttributeErrorを引き起こします
文字列を結合したい場合は、
+=
演算子などを使います。
remove()
メソッドでリストから値を削除する
リストから特定の要素を削除したい場合、remove()
メソッドを使います。このメソッドは、インデックスではなく、削除したい値そのものを指定します。
# 招待者リスト
guests = ["Alice", "Bob", "Charlie", "David"]
print(f"削除前: {guests}")
# "Charlie"をリストから削除
guests.remove("Charlie")
print(f"削除後: {guests}")
実行結果:
削除前: ['Alice', 'Bob', 'Charlie', 'David']
削除後: ['Alice', 'Bob', 'David']
もし同じ値がリスト内に複数存在する場合、remove()
は最初に見つかったものだけを削除します。また、index()
と同様に、指定した値がリスト内に存在しない場合はValueError
が発生します。
まとめ
今回は、リストを操作するための基本的なメソッドを4つ紹介しました。
index(値)
: 値のインデックスを検索します。append(値)
: リストの末尾に値を追加します。insert(インデックス, 値)
: 指定したインデックスに値を追加します。remove(値)
: 指定した値をリストから削除します。
これらのメソッドを使いこなすことで、リストのデータをより柔軟に、そして効率的に操作できるようになります。