【Python】リスト
これまでに学習した変数だけではエクセルのようにまとまったデータを扱うには不便です。
Pythonでは複数のデータを効率的に扱うためにいくつかの仕組みが用意されています。
これらをPythonではコレクションと呼びます。
コレクションにはリスト、ディクショナリ、タプル、セットがあります。
今回はその中の一つリストをご紹介します。
※C言語など別の言語ではリストは配列と呼ばれます。実は僕も配列派です。
今後も説明内でリストを配列と呼ぶこともあると思います。
リスト
テストの点数を管理する方法を考えます。
4人がそれぞれ以下の点数を取りました。
名前 | 点数 |
織田 | 45 |
武田 | 70 |
北条 | 50 |
豊臣 | 30 |
リストの説明
リストの作成
まずはサンプルを見て見ましょう
先頭行でリストを作成しています
tensu = [45,70,50,30]
先頭から順にデータが並んだ状態です。
45 | 70 | 50 | 30 |
print(tensu)
これで全データを閲覧できます。
ここではリストの要素数が4つです。
これを配列数と言います。
インデックス
それぞれのデータはインデックス(添え字とも言う)でアクセスします。
インデックスは先頭が0で数えます
インデックスは[1]のように[]を使って表現します
データ | 45 | 70 | 50 | 30 |
インデックス | 0 | 1 | 2 | 3 |
print(tensu[1])
インデックス1のデータを表示できました。
sum関数(リストの合計値を求める)
リストにしたデータは合計値を簡単に求めることができます。
それがsum関数です。
使い方を見て見ましょう。
簡単ですねsum関数でリスト内のデータの合計値を求めています。
配列数がいくつになってもsum関数だけで求められます。
len関数(リストの配列数(要素数)を求める)
同様にlen関数で配列数も簡単に求める事が出来ます。
リストデータの変更、追加、削除
インデックスを利用した変更
リストを最初に作成した配列数内、例えば今回のサンプルでは4要素の配列を用意したので0~3までの配列のデータはインデックスで変更が可能。
tensu[2] = 10
これで50点を10点に変更できます。
データの追加
最初に作成した配列を超えてインデックスアクセスは出来ません。
例えば5人目のメンバーが増えて100点を取ったとします。
サンプルのように記述するとエラーになります。
追記はこのようにappend()関数を利用します
データの最後に追記されます
データの削除
popを利用すると任意の位置のデータを削除出来ます。
配列はその分前に詰められます。
※popは削除した位置のデータの取得も行っていますが、ここでは詳しく説明しません。
スライス
スライスはインデックスの範囲指定を行う書式です。
tensu[1:3]
配列1~3
tensu[1:]
配列1以上すべて
tensu[:2]
配列2以下すべて
負のインデックス
インデックスは負で表現できます。
データ | 45 | 70 | 50 | 30 |
インデックス | 0 | 1 | 2 | 3 |
負のインデックス | -4 | -3 | -2 | -1 |
今回はここまで。
お疲れ様でした。
ディスカッション
コメント一覧
まだ、コメントがありません