История изменений
Исправление theNamelessOne, (текущая версия) :
Если где-то в subpages содержится «victim name», то надо в тот же subpages после «victim name» добавить еще одну секцию, с тем же набором параметров, но другими значениями.
Как-то так:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import json
def add_some_shit_for_victim(dct):
if 'subpages' in dct:
subpages = dct['subpages']
victim = None
for idx, subpage in enumerate(subpages):
if subpage['name'] == 'Victim name':
victim = idx
break
if victim is not None:
# С тем же набором параметров, но с другими значениями
new_page = {
'name': 'foo',
'img': 'foo.img',
'id': '42'
}
subpages.insert(victim + 1, new_page)
return dct
def main():
with open('categories.json', 'r') as json_data:
data = json.load(json_data, object_hook=add_some_shit_for_victim)
print json.dumps(data, ensure_ascii=False, indent=2)
if __name__ == '__main__':
main()
Исходная версия theNamelessOne, :
Если где-то в subpages содержится «victim name», то надо в тот же subpages после «victim name» добавить еще одну секцию, с тем же набором параметров, но другими значениями.
Как-то так:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import json
def add_some_shit_for_victim(dct):
if 'subpages' in dct:
subpages = dct['subpages']
victim = None
for idx, subpage in enumerate(subpages):
if subpage['name'] == 'Victim name':
victim = idx
print victim
break
if victim is not None:
# С тем же набором параметров, но с другими значениями
new_page = {
'name': 'foo',
'img': 'foo.img',
'id': '42'
}
subpages.insert(victim + 1, new_page)
return dct
def main():
with open('categories.json', 'r') as json_data:
data = json.load(json_data, object_hook=add_some_shit_for_victim)
print json.dumps(data, ensure_ascii=False, indent=2)
if __name__ == '__main__':
main()