Comment redéfinir les clés de dict python

Je suis en train de travailler sur un programme qui (entre autres choses) lit un fichier CSV (il est stocké dans un tableau de dicts dans la forme [{col1:data1a,col2:data2a},{col1:data1b,col2:data2b}] ). Pour chaque ligne, dans le cadre de tout autre traitement, j'ai besoin de reconfigurer ces clés à des valeurs entrées par l'utilisateur, qui sont fournis dans un autre dict de sorte qu'ils peuvent être utilisés en tant que paramètres dans un appel d'API. La cartographie de la matrice est de la forme: {badname1:goodname1, badname2:goodname2,...}.

Donc je voudrais obtenir à partir de:
{badname1:data1, badname2:data2,...} à {goodname1:data1, goodname2:data2,...}

Je voudrais utiliser quelque chose comme zip() (bien que zip() rendements {badname1:badname1,...}).

Semble comme il devrait y avoir une solution évidente qui fait allusion à moi.

EDIT:
Si les données sont dans a et de la cartographie dans b:

dict(zip(b,a.itervalues()))

- Je obtenir près, mais il ne fonctionnera que dans les cas où les champs sont connus pour être dans le même ordre je pense.

source d'informationauteur acrosman