今回はリストについて
今までは 変数は 1つの変数に対して 1つ値が 格納されるケースで話してきましたが、Python には 複数の値をまとめて利用できる 変数の 型が いくつかあります。
最も汎用的?なのが リスト(list)です。
list(配列)
変数名 = [ 値1, 値2, 値3, ・・・・]
data = [10, 20, 30, 40] print(data) print(data[0]) print(data[3])
[10, 20, 30, 40] 10 40
変数名[n] で n 番目の 値を参照します。 先頭は 0番になります。
次のように途中を改行して記述することもできます。
最後のカンマ(,)は省略可能です。
data = [ 'A', 'B', 'C', 'D', 'E', ]
数値と文字など 違う データ形式も 混在できます。
ただ、通常は同じ型のみを使うと思います。
data = [10, 'A', 30, 'abc']
スライス
data = [1, 2, 3, 4, 5, 6, 7, 8, 9] # [0][1][2][3][4][5][6][7][8] print(data[2:5]) # data[2] ~ data[4] print(data[:3]) # data[0] ~ data[2] 先頭から print(data[7:]) # data[7] ~ data[8] 最後まで print(data[1:7:2]) # data[1], data[3], data[5] 1つ飛ばし
[3, 4, 5] [1, 2, 3] [8, 9] [2, 4, 6]
変数名[ 開始 : 終了 : 増減値 ] の形式で 要素が取り出せます。
終了は その1つ前になるので 注意。
次のように後ろからも指定可能
data = ['A', 'B', 'C', 'D', 'E', 'F', 'G'] print(data[-1]) # 最後 'G' print(data[-3:-1]) # 最後から3番目~最後から1番目
G ['E', 'F']
次のように指定すると 要素を可変的に操作できます。
data = [1, 2, 3, 4, 5, 6, 7] data[1:6] = ['A', 'B'] print(data)
[1, 'A', 'B', 7]
data[1] ~ data[5] までを ['A', 'B'] に置き換えています。
要素の結合と追加
data = [1, 2, 3, 4] data = data + [5, 6] # 結合 [1, 2, 3, 4, 5, 6] data += [7, 8] # 結合 [1, 2, 3, 4, 5, 6, 7, 8] data.append(9) # 追加 [1, 2, 3, 4, 5, 6, 7, 8, 9] print(data)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
要素の削除
data = ['A', 'B', 'C', 'D'] del data[1] print(data)
['A', 'C', 'D']
要素を 置きかえることで 削除することもできます。
data = ['A', 'B', 'C', 'D'] data[1:3] = [] # data[1] ~ data[2] を 削除 print(data)
['A', 'D']
その他
全ての要素へのアクセスは for 文が便利
data = ['A', 'B', 'C', 'D'] for n in data: print(n)
A B C D
要素の数は組込み関数 len() を用いて求めます。
data = ['A', 'B', 'C', 'D'] print(len(data)) # 4
だいたい、こんな 感じかな。