退屈なことはPythonにやらせよう 第2版 読んでみた④
前回↓
今回は第4章「リスト」
よく使うよね、リスト。あんまよくわかってないけど。
・リストの中のリスト
使ったことなかったから記載の仕方もわからなかった。
こんな感じで表せる。
>>>a=[[1,2,3,4,5],["田中","山田","佐藤","鈴木"]]
>>>print(a[0])
[1,2,3,4,5]
>>>print(a[1][3])
鈴木
・リストを変更
知ってるけど忘れそうだから。
>>>b=[1,10,100,1000,10000]
>>>b[1]=500
>>>print(b)
1,500,100,1000,10000
消したい時はdel
>>>del b[1]
>>>print(b)
[1,100,1000,10000]
・リストの中にある数字があるかどうか
>>>100 in b
true
なんかで使えそう。多分。
・複数代入法
リストを使ってまとめて変数に代入できるよってやつ。
>>>c=["red","blue","green"]
>>>color1,color2,color3=c
>>>print(color2)
blue
・リストのインデックスを取得する方法
①for文
>>>for index in range(len(c)):
>>> print(str(index), ":", c[index])
0:red
1:blue
2:green
②enumerate()関数を使う
for index, item in enumerate(c):
print(str(index), ":", item)
0:red
1:blue
2:green
②の方がちょっと綺麗?
・method
この辺はいつもわからなくてググって、忘れて、を繰り返してる。
list.index():リストのインデックスを返す。2つ以上ある場合は初めに出てきた方を参照する。
>>>list = ["田中","山田","佐藤","鈴木","田中","ジョン"]
>>>list.index("田中")
0
list.apend():リストの末尾に値を追加する
>>>list.apend("アレックス")
>>>list
"田中","山田","佐藤","鈴木","田中","ジョン","アレックス"
list.insert(指定インデックス, "挿入する値"):リストの指定した場所に追加する
>>>list.insert(1, " 後藤")
>>>list
"田中","後藤","山田","佐藤","鈴木","田中","ジョン","アレックス"
list.remove():リストの値を削除する。2つ以上ある場合は初めに出てきた方を参照する。
>>>list.remove("田中")
>>>list
"後藤","山田","佐藤","鈴木","田中","ジョン","アレックス"
list.sort():リストをソートする。reverse=Trueで逆向き
>>>number_list = [5,2,8,2,76,2]
>>>number_list.sort()
>>>number_list
2,2,2,5,8,76
>>>number_list.sort(reverse=True)
>>>number_list
76,8,5,2,2,2
list.reverse():順番を逆にする
>>>number_list.reverse()
>>>number_list
2,2,2,5,8,76
・copy()関数
>>>import copy
>>>b = [1,10,100,1000,10000]
>>>d = copy.copy(b)
>>>d[1] = 50
>>>d
1,50,100,1000,10000
>>>b
1,10,100,1000,10000
※リストを含むリストをコピーする場合はdeepcopy()関数を代わりに使う。
以上、リストはまじでよく使うから覚えとかないと。
流れ的に次回は辞書ですね〜