Замена значений в списке / словаре Python?

Хорошо, я пытаюсь отфильтровать переданный мне список / словарь и & quot; clean & quot; это немного, поскольку есть определенные ценности в этом, от которых я должен избавиться.

Итак, если это выглядит так:

"records": [{"key1": "AAA", "key2": "BBB", "key3": "CCC", "key4": "AAA"...}]

Как бы я быстро и легко прошел через все это и заменил бы все значения "AAA"? с чем-то вроде «XXX»?

Основное внимание уделяется скорости и ресурсам, поскольку это могут быть длинные списки, и я не хочу, чтобы этот процесс занимал слишком много времени.

Ответы на вопрос(2)

dic = root['records'][0]
for i, j in dic.items():       # use iteritems in py2k
    if j == 'AAA':
        dic[i] = 'xxx'
Решение Вопроса
DATA = {"records": [{"key1": "AAA", "key2": "BBB", "key3": "CCC", "key4": "AAA"}]}

for name, datalist in DATA.iteritems():  # Or items() in Python 3.x
    for datadict in datalist:
        for key, value in datadict.items():
            if value == "AAA":
                datadict[key] = "XXX"

print (DATA)
# Prints {'records': [{'key3': 'CCC', 'key2': 'BBB', 'key1': 'XXX', 'key4': 'XXX'}]}
 Crazy Serb02 июл. 2009 г., 22:55
Да, это работает как шарм. Я пропустил один из внешних циклов и получил ошибку list / items () ... спасибо!

Ваш ответ на вопрос