愚者はいつまでも悩み、賢者は尋ねる
-Benjamin Disraeli
第3章でオブジェクト変数に保存する方法を覚えた。この章ではオブジェクトをコンテナに保存する方法を学ぶ。コンテナとは書類棚のようなもので、データ構造を保持する。これから3つの一般的になりつつあるコンテナとしてリスト、タプル、辞書について学ぶ
リストは好きな順番でオブジェクトを保存しておけるコンテナ
角カッコに挟んで表す。新しくリストを作るときの書き方は2つある
空のリストを作るにはlist関数を使います
fruit = list()
fruit
>>[]
#あるいは角カッコでも書ける
fruit = []
fruit
>>[]
2つ目の[]構文を使って中の要素が入ってる状態のリストを作れる。それぞれの要素を角カッコの中にカンマっ区切りで並べて書く
fruit = ["Apple","Orange","Pear"]
fruit
>>['Apple','Orange','Pear']
このリストにはApple、Orange、Pearの3つが指定された順番通りに格納される。プログラマーが順番を変更しない限り、要素の順番は常に1、2、3
新しい要素リストを追加するときはappendメソッドを使う
fruit = ["Apple","Orange","Pear"]
fruit.append("Banana")
fruid.append("Peach")
fruit
>>['Apple','Orange','Banana','Peach']
appendメソッドを使って渡したオブジェクトがリストの末尾に追加されました。appendは新しい要素を常にリストの最後に追加します。
リストは文字列以外にもどんなオブジェクトでも格納できます。
文字列、リスト、タプル(後述のように)繰り返し処理で要素を1つずつ取り出せるオブジェクトはイテラブル(繰り返し可能)です。
イテラブルなオブジェクトは繰り返し可能だと言われます
インデックスはコンテナ内での要素の位置。最初の要素のインデックスは0
1ではないことに注意。
次のコードはAppleがインデックス0でOrangeが1pearが2
このインデックスを使い要素を取り出せます。以下
fruit = ["Apple","Orange","Pear"]
fruit[0]
fruit[1]
fruit[2]
>>'Apple'
>>'Orange'
>>'Pear'
もし存在しないインデックスで要素を取り出そうとすると例外を発生するよ
Apple Rooms laboratoryの運営者