2015-04-15 3 views
1
a = OrderedDict([(14, (2361.42, 1339.25)), (15, (3581.08, 1427.08)), (16, (0, 4640.11)), (17, (0, 2667.36)), (18, (0, 1686.63))]) 

b = OrderedDict([(14, '03-31'), (15, '04-07'), (16, '04-14'), (17, '04-21'), (18, '04-28')]) 

Я хочу, чтобы заменить значение в Ь, до значения наряду с значением б Я попытался этоУпорядоченный словарь питона заменить значение ключа

dict((b[key], value) for (key, value) in a.items()) 

из положить является

{'03-31': (2361.42, 1339.25), '04-07': (3581.08, 1427.08), '04-28': (0, 1686.63), '04-21': (0, 2667.36), '04-14': (0, 4640.11)} 

Я хочу, чтобы он был

OrderedDict([('03-31', (2361.42, 1339.25)), ('04-07', (3581.08, 1427.08)), (04-14', (0, 4640.11)), ('04-21', (0, 2667.36)), ('04-28', (0, 1686.63))]) 

ответ

3

Вместо этого вы можете использовать конструктор OrderedDict:

OrderedDict((b[key], value) for (key, value) in a.items()) 
Смежные вопросы