def 小児科医():

かけだし小児科医が仕事の合間にプログラミングを勉強するブログです。

退屈なことはPythonにやらせよう 第2版 読んでみた④

前回↓

defpediatric.hatenablog.com

今回は第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()関数を代わりに使う。

 

 

以上、リストはまじでよく使うから覚えとかないと。

 

流れ的に次回は辞書ですね〜