今回はリストについて
今までは 変数は 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
だいたい、こんな 感じかな。
コメント