Dictionary 辞書型
リストの要素が数字でインデクス化されているのと異なり、辞書型はキー(key)でインデクス化されます。キー(key):値(value)のペアの集合です。
ディクショナリ 定義方法
{キー1:値1, キー2:値2, キー3:値3…}
空の場合
{}
キーは変更不可能な型です。キーには文字列、数値が使えます。タプルは要素が数値、文字列、タプルであるものがキーとして使えます。対してリストはキーとして使えません。
辞書は順序づけされません。
値を取り出す
dict[key]のように書くと値を取り出せます。
1 2 3 4 | soldier = { '名前' : 'ジョン' , 'ニックネーム' : 'J' , '武器' : 'ダガー' } name = soldier[ '名前' ] print (name) |
【結果】
1 | ジョン |
値を入れ替える
値を取り出す方法と逆です。
1 2 3 4 | soldier = { '名前' : 'ジョン' , 'ニックネーム' : 'J' , '武器' : 'ダガー' } soldier[ 'ニックネーム' ] = 'スシ' print (soldier) |
【結果】
1 | {'名前': 'ジョン', 'ニックネーム': 'スシ', '武器': 'ダガー'} |
キーを追加する
値を入れ替える記法と同じです。存在しないキーを指定すると、追加されます。
1 2 3 4 | soldier = { '名前' : 'ジョン' , 'ニックネーム' : 'J' , '武器' : 'ダガー' } soldier[ 'アイテム' ] = '薬草' print (soldier) |
【結果】
1 | {'名前': 'ジョン', 'ニックネーム': 'J', '武器': 'ダガー', 'アイテム': '薬草'} |
キーが辞書にあるか調べたい時
inを使って辞書に指定したキーがあるか調べられます。
1 2 3 4 5 | soldier = { '名前' : 'ジョン' , 'ニックネーム' : 'J' , '武器' : 'ダガー' } if 'ニックネーム' in soldier: print ( '有り' ) else : print ( '無し' ) |
キーを指定して要素を削除する
del文を使います。
1 2 3 4 | soldier = { '名前' : 'ジョン' , 'ニックネーム' : 'J' , '武器' : 'ダガー' } del soldier[ 'ニックネーム' ] print (soldier) |
【結果】
1 | {'名前': 'ジョン', '武器': 'ダガー'} |
辞書型の全てのキー、または全ての値のリストを得る
全てのキーのリストはlist(dict.keys())、全ての値のリストは list(dict.values())で得られます。
1 2 3 4 5 6 | soldier = { '名前' : 'ジョン' , 'ニックネーム' : 'J' , '武器' : 'ダガー' } keys = list (soldier.keys()) values = list (soldier.values()) print (keys) print (values) |
【結果】
1 2 | ['名前', 'ニックネーム', '武器'] ['ジョン', 'J', 'ダガー'] |
ループで、キーと値を同時に取り出す
items()関数を使うとキーと値を同時に取り出せます。
1 2 3 | soldier = { '名前' : 'ジョン' , 'ニックネーム' : 'J' , '武器' : 'ダガー' } for k, v in soldier.items(): print ( 'key=' + k, 'value=' + v) |
【結果】
1 2 3 | key=名前 value=ジョン key=ニックネーム value=J key=武器 value=ダガー |
コメントを残す