それぞれ括弧の種類がちがう。
- リスト => [ ] (角括弧)
- タプル => ( ) (括弧)
- ディクショナリ => { } (中括弧)
リスト
#基本 # 空リスト作成 list1 = [] list2 = list() # 要素の含むリスト作成 list3 = [0, 1, 2]いわゆる配列にあたる。
list1 = [1 , 2, 3] # 他のリストのコピーを作成 (完全なコピーではない) list2 = list(list1) # 連番のリストを作成 list3 = range(3) #[0, 1, 2] list4 = range(3, 5) #[3, 4, 5] list5 = range(1, 21, 3) #[1, 4, 7, 10, 13, 16, 19] 3番目の引数で値の増減量を指定rangeはfor文でも便利に使えるのでどんどん使いたいところ。
タプル
# 空タプルの作成 tuple1 = () tuple2 = tuple() # 要素が1つのタプルの作成 tuple3 = (1,) # 複数要素からなるタプルを作成 tuple4 = (0, '1', 2, [3], -4)タプルは、変更のできない配列。
タプル / リストの操作
list = [1, 2, 3, 4, 5] tuple = (6, 7, 8, 9, 10) # 要素の参照 list[1] # 2 list[-1] # 5 負数は末尾から参照 tuple[2] # 8 # 要素の代入 list[0] = 100 # [100, 2, 3, 4, 5](タプルは変更できないので)要素の代入はリストのみ行える。
#タプル / リストの要素数取得 len(list) len(tuple)
a = [1, 2, 3, 4] #要素の取り出し first = a.pop(0) # 1 (a == [2, 3, 4]) #末尾の取り出し last = a.pop() # 4 (a == [2, 3]) #要素の追加 a.insert(0, 5) # [5, 2, 3] #末尾に追加 a.append(9) # [5, 2, 3, 9] #末尾にリスト追加 a.extend([0, 1, 2, 3]) # [5, 2, 3, 9, 0, 1, 2, 3]
辞書 (ディクショナリ)
# 辞書 = ディクショナリ ( ≒ 連想配列) dic = {"レモン": 100, "アボカド": 150, "椎茸": 200} # 要素の参照 dic['レモン'] # 100 # 要素の代入 dic['アボカド'] = 300他の言語の連想配列と同じく、キーから値の取得ができる。
dic = {"a": 100, "b": 200, "c":300} #キーの取得 print dic.keys() # ['a', 'c', 'b'] *順不同となるので注意 #値の取得 print dic.values() # [100, 300, 200] #キーの存在確認 print "a" in dic # True #ハッシュキーの削除 del dic["a"]