Python100本ノック 4問目
解答
num_select = (1, 5, 6, 7, 8, 9, 15, 16, 19) letters = "Hi He Lied Because Boron Could Not Oxidize Fluorine. New Nations Might Also Sign Peace Security Clause. Arthur King Can." result = {} word = letters.split(' ') for (num, gen) in enumerate(word,1): if num in num_select: result[gen[0:1]] = num else: result[gen[0:2]] = num print(result)
学んだこと
辞書型配列
いわゆるハッシュのこと
辞書の新規作成
dic = {} #空の辞書作成 dic{"key1": "value1", "key2": "value2"} #キーバリュー型で直接的な作成 dic["key"] = "value" #変数的に作成する
enumerate
for文でイテレーションするイテラブルオブジェクトの他にインデックス番号も同時にイテレートすることができる便利なもの
lists = ['test1','test2','test3','test4'] for (i, list) in enumerate(lists): print(i, list) #(0, 'test1') #(1, 'test2') #(2, 'test3') #(3, 'test4')
第2引数に開始番号を指定できる。
lists = ['test1','test2','test3','test4'] for (i, list) in enumerate(lists, 1): print(i, list) #(1, 'test1') #(2, 'test2') #(3, 'test3') #(4, 'test4')