替换Python列表/字典中的值?

Cra*_*erb 21 python dictionary replace list

好吧,我正在尝试过滤传递给我的列表/字典并"清理"一下,因为其中有一些我需要摆脱的值.

所以,如果它看起来像这样:

"records": [{"key1": "AAA", "key2": "BBB", "key3": "CCC", "key4": "AAA"...}]
Run Code Online (Sandbox Code Playgroud)

我将如何快速轻松地完成所有操作并将所有"AAA"值替换为"XXX"?

重点是速度和资源,因为这些可能是长列表,我不希望这个过程消耗太多时间.

Ric*_*dle 28

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'}]}
Run Code Online (Sandbox Code Playgroud)


Sil*_*ost 10

dic = root['records'][0]
for i, j in dic.items():       # use iteritems in py2k
    if j == 'AAA':
        dic[i] = 'xxx'
Run Code Online (Sandbox Code Playgroud)