Как изменить ключи в словаре на верхний регистр и добавить значения того же ключа в результирующий словарь? ⇐ Python

Программы на Python
Anonymous
Как изменить ключи в словаре на верхний регистр и добавить значения того же ключа в результирующий словарь?

Сообщение Anonymous »

У меня есть словарь, который выглядит так:

Код: Выделить всё

d = {'A':110, 'a':100, 'T':50, 't':5}
Я хочу изменить клавиши на верхний регистр, объединить A+a и T+t и сложить их значения, чтобы полученный результат словарь выглядит так:

Код: Выделить всё

d = {'A': 210, T: 55}
Вот что я пробовал:

Код: Выделить всё

for k, v in d.items():
k.upper(), v
и результат:

Код: Выделить всё

('A', 110)
('A', 100)
('T', 50)
('t', 5)
Я похож на кортежи, но хочу изменить их в словаре, поэтому попробовал написать функцию:

Код: Выделить всё

def Upper(d):
for k, v in d.items:
k.upper(), v
return d
но он возвращает словарь без изменений.

После того, как я изменил ключи на верхний регистр, я нашел это решение, как добавить значения ключей в словарь:

Код: Выделить всё

dict([(x, a[x] + b[x]) if (x in a and x in b) else (x, a[x]) if (x in a) else (x, b[x])
но сначала мне нужно перевести клавиши в верхний регистр!

Подробнее здесь: https://stackoverflow.com/questions/970 ... the-same-k

Вернуться в «Python»