男のブログ俺は中卒だ。学歴なんて無くても生きていける。男のブログプログラミングPythonのデータ構造「リスト(配列)」を徹底解説Pythonのデータ構造「リスト(配列)」を徹底解説2019年7月16日2019年7月17日プログラミングpythonsuckamon前回紹介した「タプル」とよく似たPythonのリスト。タプルは一度定義すると、後から内容を差し替えることができないので主に定数的な使い方をする。リストは可変長なデータ構造なので、後からあらゆるデータ操作を行うことができる。今回はこの「リスト」について詳しく解説していこう。コンテンツリストの定義リストに要素を追加・削除リストの連結リストのソートスライシングリストタプルの使い分けリストの定義リストの定義は他のプログラミング同様、角括弧を使う方法とlist関数を使う方法がある。list(tuple_1)リストの参照はタプルと同様、インデックス番号を指定して行う。2リストに要素を追加・削除appendメソッドを使うとリストの末尾に要素を追加することができる。4]insertメソッドは第一引数に指定した位置に要素を追加できる。3]popメソッドはinsertと全く逆の処理を行う。指定したインデックス番号の位置にある要素を削除する。'g']removeメソッドも要素を削除することができるが、こちらは指定した値を最初から検索し、リスト内で最初に見つかったものを削除する。'g']リストの連結タプルと同様、+演算子を使うと複数のリストを連結することができる。6]また、extendメソッドを使うと既に定義されたリストに、引数で指定したリストを追加できる。9]上記のとおり二つの連結方法があるが、処理の速さはextendメソッドの方が早いようなので積極的に利用するようにしよう。リストのソートsort関数を使うとリスト内の要素をソート(並び替え)することができる。'bbbb']デフォルトでは昇順ソートが行われるが、reverse引数にTrueを指定すると降順ソートを行うことができる。key引数にソートの際の基準となるキーを指定することもできる。サンプルのコードではkeyにlenを指定している。これは各要素の文字数をベースに昇順ソートをする。スライシングリストから一部を抽出する場合は、スライスと呼ばれる記法を使う。[start:stop]形式でインデックス番号を指定する。[8]コロンを二つ続けるとstep指定をすることもできる。2を指定すると一つ飛ばしで要素を取得する。8]また、スライスに対して要素を代入することもできる。8]リストタプルの使い分けタプルは先述のとおり定数的なデータ構造なので、使える機能が限られる。対してリストは可変長なデータ構造なので扱いやすい反面、使える機能も幅広い。一度に全部覚えようとすると大変なので、こんな使い方、メソッドもある、というくらいに理解し、必要に応じて引き出しを開けるようにすると良いだろう。当サイトはXserverで運営していますプロフィール中卒男15歳で熊本から単身大阪へ渡り、囲碁棋士になるための修行を積む。その後、紆余曲折ありプログラミングを学び職とする。現在プログラミングや統計、機械学習の勉強に合わせ、双子の育児に奮闘中。