У меня есть файл CSV ("import.csv"), в котором содержатся следующие данные, где каждое значение является строкой
KID, C1, C2, C3
ID1, X1, "X2, X2.5", X3
ID2, "Y1, Y1.5", Y2, Y3
Я хочу создать вложенный словарь, используя данные, подобные
'KID' {
'ID1' {
'C1': 'X1',
'C2': ['X2', 'X2.5'],
'C3': 'X3',
},
'ID2' {
'C1': ['Y1', 'Y1.5'],
'C2': 'Y2',
'C3': 'Y3',
},
У меня есть следующий код
import csv
dict = {}
with open("import.csv", mode='r') as data_file:
data = csv.DictReader(data_file)
for row in data:
item = artists.get(row["artist"], dict())
item["C1"] = str(row["C1"])
item["C2"] = str(row["C2"])
item["C3"] = str(row["C3"])
dict[row["KID"]] = item
Вместо этого я получаю словарь
'KID' {
'ID1' {
'C1': 'X1',
'C2': 'X2, X2.5',
'C3': 'X3',
},
'ID2' {
'C1': 'Y1, Y1.5',
'C2': 'Y2',
'C3': 'Y3',
},
Я перебираю словарь, находя ключи в словаре с помощью значение, поэтому проблема со строкой / списком меня запутывает. Есть ли способ изменить создание моего словаря или мне нужно изменить способ настройки CSV?