Python|Pythonのリスト型で使えるメソッドまとめ!

こんにちは、うしまるです。

今回は、Pythonのリストを操作するために使用できるメソッドについて解説していきます。

最初に、Pythonでのリストの作り方については下の関連記事を確認ください。

Pythonで使えるリスト操作メソッドまとめ

Pythonのリストデータ型には、リストを扱うためのメソッドが用意されています。さっそくVisual Studio Codeを使って試してみましょう!

リストの末尾に要素を追加する(append)

リストの末尾に要素を1つ追加するにはappendを使用します。

list.append([追加したい要素])

では早速動作結果をみてみましょう!

リストデータ型のnumlistに数値6を入れてみました。実行の結果リストの最後に数値6が追加されたことが確認できます。

リストにリストを追加する(extend)

リストデータ型に他のリストデータ型をまるっと入れることができるメソッドがextendです。

list.extend([追加したいリストデータ型])

では、実際にどのように追加されるのか見てみましょう!

今回は、追加用のリストとして数値(8~10)の格納されたリストを用意しました。extendメソッドの引数に追加したいリストを記述することで、ベースとなるリストの後ろに、追加用リストの数値が追加されることが確認できます。

リストの指定位置に要素を追加する(insert)

リストデータ型の任意の位置に要素を追加するためには、insertメソッドを使用します。

list.insert([追加したいインデックス],[追加したい要素])

では、実際にどのように動作するのか見てみましょう!

今回は、リストデータ型のnumlistの3番めに数値7を追加してみました。インデックスは0始まりなので左から3番めにデータを入れたい場合は0→1→2と、3番めの”2″をinsertメソッドの第1引数に記述します。次に、3番めに追加したい要素をinsertメソッドの第2引数に追加します。

実行の結果、リストの3番めに数値7が追加されました。

リストから指定した要素を消す(remove)

リストデータ型の中から消したい要素を消すためのメソッドがremoveです。ただし指定した要素と同じ値を持つ最初の要素のみが削除対象になりますので、複数同じ要素を持っている場合はインデックス番号が若いものが削除対象となります。

list.remove([削除したい要素])

では、さっそく動かしてみましょう!

今回はベースとなるリストデータ型numlistから数値4を削除してみました。実行後にリストから数値4が削除されていますね。

リストから任意の位置の要素を取り出して削除する(pop)

リストデータ型の中の任意の位置から要素を取得し、リストから削除するメソッドがpopです。基本情報とかで習う、頭からとかお尻からとってどうのこうのというのとは違い、Pythonでは位置が指定できます。

[取得した要素] = list.pop([取得したいインデックス])

では、さっそく動かしてみましょう!

取得した要素を格納するために、変数valueを用意しました。popメソッドでインデックス番号2を選択するとリストの中では先頭から3番めの要素を取得することができますので、変数valueには数値3が格納され、リストからは取り出した数値が削除されています。

リストの要素をすべて削除する(clear)

リストデータ型の中の要素をすべて削除する場合は、clearメソッドを使用します。

list.clear()

では、さっそく動かしてみましょう!

ベースとなるリストデータ型numlistに対して、clearメソッドを使用することでリストの要素がすべて削除され、「”[]”」となりました。

リストから指定した要素の格納先を検索する(index)

リストデータ型の中に何が入っているかわからない状態のとき、検索したい要素を指定すると、リストの中に入っているかどうか、入っている場合どのインデックス位置に入っているのか教えてくれるメソッドがindexメソッドです。

[見つかったインデックス番号] = list.index([検索したい要素])

では、さっそく動かしてみましょう!

今回は、取得したいインデックス番号を格納する変数indexvalueに、数値5の要素がないかどうかを試してみました。結果インデックス番号4が返され、リストの中では5番目にあたる数値5と一致していることがわかります。

ちなみに、もしリストにないものを指定した場合はこのような例外が発生します。こちらについてはまた別の記事で例外と抜けるための方法について解説していきたいと思います。

リストの中の指定した要素の数を知る(count)

リストの中に指定した要素が何個あるのかを知るためには、countメソッドを使用します。前章のようなインデックス番号を取得しようと思った時、そもそも無かったらエラーとなってしまうので、予めこちらで要素が存在するのかどうか確認してから検索してみるというのもひとつの手です。

[要素の数] = list.count([数を取得したい要素])

では、さっそく動かしてみましょう!

今回は、ベースとなるリストデータ型の中に数値1を3つ、数値2を2つ、数値4を1つ格納したリストを用意しました。メソッドcountの引数に検索したい要素の数値1を入力し、実行した結果、変数countvalueに数値1の数3が出力されました。

リストをソートする(sort)

ばらばらになったリストデータ型の中身をきれいに整頓してくれるのが、sortメソッドです。

昇順の場合→list.sort()
降順の場合→list.sort(reverse=True)

では、さっそく動かしてみましょう!

最初は、昇順でベースとなるリストデータ型のnumlistをソートしてみました。バラバラだったリストが1→4の順に整理されていますね。またさらにsortメソッドの中に「reverse=True」を追加することで、今度は4→1の順番に整理されました。

リストをひっくり返す(reverse)

リストをごっそり逆向きにひっくり返すのメソッドがreverseとなります。格納されている要素の順番が一番うしろが先頭に来て、後ろから2番めが先頭から2番めにといった順番に変更されます。

list.reverse()

では、さっそく動かしてみましょう!

ベースとなる数値のリストデータ型numlistに対して、reverseメソッドを使用することで、リストの要素の並び順が逆向きになりました。

リストのコピーを作成する(copy)

リストのコピーを作成する場合は、copyメソッドを使用します。個人的には、”=”でも良いような気がしていますが、用意されていますのでご紹介したいと思います。

[コピー先のリストデータ型] = list.copy()

ではさっそく動かしてみましょう!

ベースとなるリストデータ型numlistを、新しいリストデータ型のcopylistへ代入してみました。もちろんcopyメソッドを使わなくても同じ結果となるわけですが、なにか理由があるやもしれませんのでこちらを使ったほうが安全というところでしょうか。

まとめ

今回は、リストの操作方法についてご紹介しました。これらを組み合わせることでリストデータ型の中に格納された要素を検索したり、格納したり、取り出したりとできるようになります。

一部今回ご紹介出来なかった例外に関することや組み合わせ方などはまた追々記事に追加していきたいと思いますのでよければTwitterのフォローをして頂けますと幸いです。

それでは、今回はこのへんでノシ

記事が参考になったり、気に入ってもらえたら
ポチッとしてもらえると励みになります!

にほんブログ村 IT技術ブログへ にほんブログ村 IT技術ブログ Pythonへ にほんブログ村 株ブログ つみたてNISAへ
シェアしてもらえるとうれしいです!

コメントを残す

ABOUT US
usimaru
福岡でWindowsアプリケーション開発のお仕事してます。 お金に縛られない生活を目指して日々学んだことをOUTPUTしていきます。 主なテーマ ◆仕事経験から:AWS/Azure/C++/C#/Python/Ruby ◆資産形成に向けて:つみたてNISA/米国株/日本株/仮想通貨/ソーシャルレンディング ◆好きなこと:旅行/温泉/美味しいもの/布団の中 ◆目標:ブログを毎日更新目指します!