Python

【初心者向け】Pythonのリストを解説!データの追加方法や並び替え方がわかる!

「Pythonのリストの使い方がわからない。誰か詳しく使い方を教えてほしい」

本記事ではこのような悩みを解決します。

Pythonのリストは初心者の方がつまずきがちなポイントの1つです。

「リストにデータを追加するにはどうすればいいの?」
「データの並び替え方がわからない」

など、難しいポイントはいくつもあるでしょう。

Pythonでwebアプリを作ることを目標にするなら、リストはしっかり理解しておきたいところです。リストを理解しておくと複数のデータを一度に扱えるようになり、できることの幅が広がりますよ。

そこで本記事ではPythonのリストの使い方を網羅的に解説しました。リストに要素を追加する方法や、削除する方法など、リストに関することは一通りまとめてあります。

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:
print(n)

◯実行結果

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)

内包表記を使うことで簡潔にコードが記述できたことがわかっていただけるでしょうか?

リストにはこのような書き方をあるので覚えておくと便利ですよ!

Pythonの個別指導なら『Tech Teacher』

引用元:Tech Teacher

このBlogを運営するTech Teacherは、Pythonを学習する社会人を対象に、初心者から挫折した人まで、一人ひとりの目的や学習状況にあわせた個別指導を行っています。

また、オンライン指導も選べるので、自宅でも対面でも受講できます。

一人ひとりに最適化された完全マンツーマン指導を提供

完全マンツーマン指導で着実に身につく!

Tech Teacherでは専任の教師が完全マンツーマン指導を行います。
学習状況や目標をしっかり把握した教師が、生徒様のご要望もふまえながら最適なオーダーメイドの指導をご提供します。

お仕事と両立しながら続けられる!

Tech Teacherなら、受講日時や回数を生徒様のご都合に合わせて柔軟に調整することができます。
そのため、お仕事との両立がしやすく、プログラミング学習を継続的に学習することができます。忙しい合間にプログラミングを学びたいという方におすすめです。

授業料は受けた分だけ!

Tech Teacherでは、生徒様が受けた授業の時間分だけ後払いで請求させていただきます。そのため、気軽にプログラミングの学習を始めることができます

以下のボタンからさらに詳しい情報をご覧いただけます。

まとめ

本記事ではリストの書き方および操作方法について解説しました。リストの基本的な使い方がおわかりいただけたでしょうか?

リストを使えるようになると、たくさんのデータを一度に扱えるようになります。

webアプリを作る上でもリストの知識は重要なので、しっかりマスターするようにしましょう。

本記事がpython初心者にとって有意義なものとなれば幸いです。