【Python】リストの要素追加&削除はappendメソッドとpopメソッドを使おう!使い方を紹介

20230918_Python プログラミング言語

リストの操作メソッドのうち最もよく使うのはappendメソッド(追加処理)でしょう.
リストの編集するのにappendメソッドは必要不可欠です.

appendメソッドと対になる処理としてpopメソッドがあります.

今回はリストの最後に要素を追加するappendメソッドと最後の要素を削除するpopメソッドについて紹介します.

appendメソッドについて

リストの末尾に要素を一つ追加します。a[len(a):] = [x] と等価です。

list.append(x)

appendメソッドは引数に指定した値をリストの最後の要素に追加します
リストにデータを追加したいときによく使いますね.

サンプルデータ

appendメソッドの処理を確認しましょう.
インナーマッスル(inner_muscle)というリストに腹横筋を追加します.

inner_muscle = ['腹直筋', '腹斜筋(外)', '腹斜筋(内)']
inner_muscle.append('腹横筋')
print(inner_muscle)
クリックして拡大できます

リストの最後に腹横筋が追加されましたね.

このようにappendメソッドを使えばリストの要素をどんどん増やせます.

popメソッド 末尾の要素を削除する

appendメソッドとセットで覚えたいのはpopメソッドです.

popメソッドはリストの1番最後の要素を削除します
appendメソッドと対になる処理内容ですね.

クリックして拡大できます

popメソッドを実行した後のリストを見るとappendメソッドで追加された腹横筋が消えていますね.

popメソッドを使うときの注意点

popメソッドを使って最後の要素を削除するときは引数を指定しません

popメソッドで引数を指定すると,指定したインデックスの要素を削除する処理をします.

inner_muscle = ['腹直筋', '腹斜筋(外)', '腹斜筋(内)']
inner_muscle.pop(0) #リストの0番目 腹直筋を削除する
print(inner_muscle)
クリックして拡大できます

公式リファレンスを見るとpopメソッドの詳しい処理内容が載っていました.

リスト中の指定された位置にある要素をリストから削除して、その要素を返します。インデクスが指定されなければ、 a.pop() はリストの末尾の要素を削除して返します。この場合も要素は削除されます。 (メソッドの用法 (signature) で i の両側にある角括弧は、この引数がオプションであることを表しているだけなので、角括弧を入力する必要はありません。この表記法は Python Library Reference の中で頻繁に見ることになるでしょう。)

list.pop([i])

popメソッドはただ要素を削除しているわけではありません.
戻り値として削除した要素を返します.

inner_muscle = ['腹直筋', '腹斜筋(外)', '腹斜筋(内)', '腹横筋']
print(inner_muscle.pop(0)) #インデックス0の腹直筋を返す
print(inner_muscle.pop()) #インデックス3腹横筋を返す
print(inner_muscle) #リストから腹直筋と腹横筋が削除されている
クリックして拡大できます

リストの要素を削除したいだけでは戻り値は使いませんが,削除された要素に処理を加えるときに役立ちますね.

まとめ

今回はappendメソッドとpopメソッドの処理内容について紹介しました.

  • appendメソッド
    • リストの最後に要素を追加する
    • 戻り値はなし
  • popメソッド
    • 引数を指定しないときリストの最後の要素を削除する
    • 引数を指定したとき指定したインデックスの要素を削除する
    • 戻り値は削除した要素

それぞれ対象的な処理をするメソッドですね.

違いを整理してリスト操作に活かしてみましょう!