Я работаю над программой, которая (помимо прочего) считывает файл CSV (он сохраняется как массив dicts в форме [{col1:data1a,col2:data2a},{col1:data1b,col2:data2b}]
). Для каждой строки, как часть другой обработки, мне нужно переназначить эти ключи в значения, введенные пользователем, которые представлены в другом документе, чтобы их можно было использовать в качестве параметров в вызове API. Массив сопоставления имеет вид: {badname1:goodname1, badname2:goodname2,...}
.
Так что я хотел бы получить от:
{badname1:data1, badname2:data2,...}
до {goodname1:data1, goodname2:data2,...}
Я бы хотел использовать что-то вроде zip()
(хотя zip()
дает {badname1:badname1,...}
).
Похоже, должно быть очевидное решение, которое намекает на меня.
EDIT:
Если данные в a
и отображение в b
:
dict(zip(b,a.itervalues()))
Я подхожу близко, но это будет работать только в тех случаях, когда я думаю, что поля находятся в одном и том же порядке.