私は現在、csvファイルから辞書を書くのに苦労しています。csvファイルからのPythonの書き込み辞書
2-6行は生徒の名前、各テストで自分のテストの点数ですstudent, Test 1, Test 2, Test 3, Final Exam
A, 9, 19, 9, 22
B, 10, 16, 9, 26
C, 11, 17, 8, 27
D, 7, 14, 9, 18
E, 8, 20, 8, 23
weight, 0.15, 0.25, 0.2, 0.4
max_points 12 20 9 30
:
csvファイルの形式は次のようです。 最後の2つの行は、各テストの重みと各テストのフルスコアを別々に表します。
は今、私は次のようになります。このリストから辞書を作成したい:
キーは、変数の学生を除き、CSVファイルの最初の行の変数です{'Test 1': {'weight': '0.15', 'max_points': '12'},
'Test 2': {'weight': '0.25', 'max_points': '20'},
'Test 3': {'weight': '0.2', 'max_points': '9'},
'Final Exam': {'weight': '0.4', 'max_points': '30'}}
。それぞれのネストされた辞書では、キーはcsvファイルの最初の列と最後の2つの行の名前です:weight、max_points。対応する値は、それぞれの行の値です。
私は今では出ている唯一のものがある:
reader = csv.DictReader(open('gradebook.csv'))
for row in reader:
key = row.pop('Student')
そして私は続行する方法については考えています。本当にありがとうございました!!!
あなたのファイルは、CSVファイルではありません。 CSVファイルの列はカンマで区切られます。 – DyZ
@DYZは技術的には真ですが、今ではすべての区切られたテキストファイルをCSVとして呼び出すことが一般的になっています。それが間違っているとは言えません。それは普通です。 – e4c5
@ e4c5数字「数字」を呼び出すのが一般的になってきました。それは数字にするのではないですか?基本に戻るのは痛いことではありません。 – DyZ