「Pythonのリストの使い方がわからない。誰か詳しく使い方を教えてほしい」
本記事ではこのような悩みを解決します。
Pythonのリストは初心者の方がつまずきがちなポイントの1つです。
「リストにデータを追加するにはどうすればいいの?」
「データの並び替え方がわからない」
など、難しいポイントはいくつもあるでしょう。
Pythonでwebアプリを作ることを目標にするなら、リストはしっかり理解しておきたいところです。リストを理解しておくと複数のデータを一度に扱えるようになり、できることの幅が広がりますよ。
そこで本記事ではPythonのリストの使い方を網羅的に解説しました。リストに要素を追加する方法や、削除する方法など、リストに関することは一通りまとめてあります。
Python初心者の方は、ぜひ本記事を活用してリストをマスターしてしまいましょう!
本ブログを運営しているTech Teacherは、業界初のプログラミング家庭教師サービスを提供しています。
その特徴は完全マンツーマン・フルオーダーメイド指導・30分ごとの利用が可能であるところです。
完全マンツーマン
Tech Teacherのマンツーマン指導なら理解できない箇所は何度も分かるまで説明を受けることができます。
フルオーダーメイド指導
Tech Teacherではあらかじめ決められたカリキュラムはありません。そのためご自身の学習状況や学びたいことに合わせた指導が可能です。
一括支払いなし
一般的なプログラミングスクールの料金体制はカリキュラムに対して一括払いですが、Tech Teacherでは利用した分だけの支払いとなります。そのため、大きな費用負担がなく気軽に始めることができます。
Pythonをマンツーマン指導で学べるプログラミング家庭教師について詳しく知りたい方ほこちら
Pythonにおけるリストとは
まずは「そもそもリストってなに?」という疑問にお答えしていきます。
Pythonにおけるリストとはなんなのかを初心者でもわかるようにまとめました。
リストとは
リストとは「複数のデータをひとまとめにしたもの」を指します。
通常Pythonで1つのデータを管理するときには次のように変数を宣言しますよね。
num = 1 |
このように「1つの変数に1つのデータ」を格納します。
それでは、データがたくさんあったらどうでしょうか?
num1 = 1 num2 = 2 num3 = 3 num4 = 4 num5 = 5 num6 = 6 num7 = 7 num8 = 8 num9 = 9 num10 = 10 |
このように、たくさんのデータを扱う場合には大量に変数を用意しないといけません。これだと管理が大変になってしまいます。
たとえば、すべての数字データの後ろに「円」と単位ををつけたい場合、10個すべての変数を読み込まないといけません。
そこで登場するのが「リスト」です。
リストを使うと1つの変数に複数のデータを格納することができます。
num = [1,2,3,4,5,6,7,8,9,10]
このように角カッコの中にカンマ区切りでデータをまとめて「リスト化」することができます。ここではリスト化した1つのデータをnumという1つの変数に格納しています。
こうすることで、numという1つの変数のみを操作するだけで、リストの中に入った10個のデータにまとめてアクセスすることができます。
これがリストの役割となります。
リストがとても便利なものだとわかって頂けたでしょうか?
リストの実践方法・具体例
さて、リストの使い方がわかったところで、リストの実際の使い方を勉強していきましょう。
リストの作成方法や、リストにデータを追加する方法などをまとめました。それぞれサンプルコードも紹介したので、実際にコードを実行しながら覚えていってくださいね。
リストの作成
まずはリストの作り方を解説します。といっても、リストの作り方は非常に簡単です。
基本的には角カッコの中にカンマ区切りで複数のデータを入れるだけです。
num = [1, 2, 3] |
リストには文字列を入れることも可能です。
str = [”python”, “php”, “ruby”] |
1つのリストに数値と文字列をどちらも入れることも可能です。
data = [1, “python”, “ruby”] |
リストの基本的な作り方はこれだけです。
次にリストを「print」で出力してみましょう。
num = [1, 2, 3] print(num) |
◯実行結果
Documents $ 1python test.py [1, 2, 3] Documents $ 1 |
このように、リスト変数名をそのままprint関数の引数に渡せば出力できます。
リストに格納されたデータのうち、1つだけを出力させるには次のようにします。
num = [1, 2, 3] print(num[1]) |
◯実行結果
Documents $ 1python test.py 2 Dovuments $ 1 |
このようにデータ番号を指定すればその番号に対応するデータが出力されます。
上記の例ではデータ番号に「1」を指定したので、1番目のデータである「2」が出力されました。
「1番目のデータは『1』じゃないの?」と思うかもしれません。しかし、pythonではデータは0番目からカウントするルールとなっているのです。だから、1番目のデータは2となり、0番目のデータが1となります。
また、リストのデータを1つずつすべて出力したい場合はforループを使うのが便利です。
num=[1, 2, 3]
for n in num: |
◯実行結果
Documents $ 1python test.py 1 2 3 Documents $ 1 |
numのデータを1つずつ変数nに渡し、出力させています。
リストの出力方法は以上となります。
要素の追加
リストに要素を追加するには「append」を使いましょう。
list = [”田中”, “佐藤”, “木村”] list.append(“工藤”) print(list) |
◯実行結果
Documents $ 1python test.py [’田中’, ‘佐藤’, ‘木村’, ‘工藤’] Documents $ 1 |
上記のコードでは、「田中、佐藤、木村」というリストに新しい要素「工藤」を追加しています。
このようにappendメソッドを使うとリストの末尾にデータを追加することができます。
要素の削除
リストに不要なデータがあったときにリストを一度消して作り直すのは非効率的です。
こうした場合にはpopメソッドを使ってリストから消したい要素のみを削除しましょう。
list = [”田中”, “佐藤”, “木村”] list.pop(0) print(list) |
◯実行結果
Documents $ 1python test.py [’佐藤’, ‘木村’] Documents $ 1 |
上記のコードではリストの0番目のデータである「田中」が削除されています。
popメソッドの引数に消したい要素のデータ番号を入れることで、その番号のデータを消せるのです。pop(1)とすれば「佐藤」が消せますし、pop(2)とすれば「木村」が消せます。
リスト内のデータをまるごと消したい場合には、clearメソッドを使うのが便利です。
list = [”田中”, “佐藤”, “木村”] list.clear() print(list) |
◯実行結果
Documents $ 1python test.py [] Documents $ 1 |
これでリスト内のデータをすべて削除することができました。
リストから特定の要素を消したい場合はpopメソッド、リスト内の要素ををまるごと消したい場合はclearメソッドを使いましょう。
リストの結合
複数のリストを結合させたい場合には、「extend」を使うのが便利です。
list1 = [”田中”, “佐藤”, “木村”] list2 = [”高橋”, “中村”, “池田”] list1.extend(list2) print(list1) |
◯実行結果
Documents $ 1python test.p [’田中’, ‘佐藤’, ‘木村’, ‘高橋’, ‘中村’, ‘池田’] Documents $ 1 |
extendメソッドを使って、2つのリストを結合させています。基本的にはこのやり方で問題ありません。
ただ、extendメソッドでは2つのリストは結合できますが、3つ以上のリストは結合できません。3つ以上のリストを結合させるには、「+」を使いましょう。
list1 = [”田中”, “佐藤”, “木村”] list2 = [”高橋”, “中村”, “池田”] list3 = [”山田”] list = list1 + list2 + list3 print(list) |
◯実行結果
Documents $ 1python test.py [’田中’, ‘佐藤’, ‘木村’, ‘高橋’, ‘中村’, ‘池田’, ‘山田’] Documents $ 1 |
これで3つのリストを結合させることができました。
extendメソッドを使った方が処理効率は良いので、2つの場合にはextendメソッドを使いましょう。
リストのソート
リスト内の要素をソートさせるには次のように「sorted」関数を使うのが便利です。
list = [4, 5, 1, 2, 6] list_new = sorted(list) print(list_new) |
◯実行結果
Documents $ 1python test.py [1, 2, 4, 5, 6] Documents $ 1 |
これで順番がバラバラだったリストの要素を、昇順に並べ替えることができました。
リストの要素数カウント
リストの要素数をカウントするには、「len」関数を使うのが便利です。
len関数は文字列の長さを数えるためにも使うことができますが、リストの要素数を数えるときにも使えます。
list = [”田中”, “佐藤”, “木村”] print(len(list)) |
◯実行結果
Documents $ 1python test.py 3 Documents $ 1 |
これでリストの要素数である「3」を取得することができました。
リスト内包表記
リストには「内包表記」という書き方があります。
内包表記で書くと、プログラムのコード量を減らし、すっきりとして見た目にすることができます。
内包表記は次のように書きます。
[式 for 変数 in range関数] |
要するに、内包表記とは「リストの中にfor文を組み込む」書き方です。
具体的には以下のように書きます。
num = [i for i in range(1, 10)] print(num) |
◯実行結果
Documents $ 1python test.py [1, 2, 3, 4, 5, 6, 7, 8, 9] Documents $ 1 |
こうすることで、1から9までの数字を出力させることができました。
これが内包表記と呼ばれる書き方です。内包表記を使わない場合には次のように書かないといけません。
num = [] for i in range(1, 10): num.append(i) print(num) |
内包表記を使うことで簡潔にコードが記述できたことがわかっていただけるでしょうか?
リストにはこのような書き方をあるので覚えておくと便利ですよ!
まとめ
本記事ではリストの書き方および操作方法について解説しました。リストの基本的な使い方がおわかりいただけたでしょうか?
リストを使えるようになると、たくさんのデータを一度に扱えるようになります。
webアプリを作る上でもリストの知識は重要なので、しっかりマスターするようにしましょう。
本記事がpython初心者にとって有意義なものとなれば幸いです。