dictデータの文字列を整数に変換したい
csvファイルを読み込み、dictデータとして計算にしたいのですが、
読み込み時に数字が文字列として認識されてしまうので、keyとvalueどちらも整数に変換したいです。
Python3
1 2#csv取り込みからdictデータの作成 3a_csv_file = open("file_name.csv", "r") 4dict_reader = csv.DictReader(a_csv_file) 5ordered_dict_from_csv = list(dict_reader)[0] 6dict_data = dict(ordered_dict_from_csv) 7 8#いまのdictデータ 9dict_data = {'1': '0','2': '1','3': '1'} 10 11#つくりたいdictデータ 12dict_data_goal = {1: 0,2: 1,3: 1} 13 14#いまのdictデータの整数値への変換 15for k in dict_data.keys(): 16 dict_data[k] = int(dict_data[k]) 17 for v in dict_2.values(): 18 dict_data[v] = int(dict_data[v]) 19print(dict_data)
以下のようなエラーメッセージが返ってきます
KeyError Traceback (most recent call last) <ipython-input-27-24eb3860fd9b> in <module> 3 dict_data[k] = int(dict_data[k]) 4 for v in dict_2.values(): ----> 5 dict_data[v] = int(dict_data[v]) 6 print(dict_data) KeyError: 0
valueの数字は整数に変換できるのですが、keyの数字は変換できません。
環境:windows10
jupyter NotebookでPython3を使用しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/01 23:39