Python Kivy JSON存储数据操作-递归操作
我有json存储数据,需要添加新数据或更新现有数据。 如果类型为LAYOUT,则检查elemets prop中的子项Python Kivy JSON存储数据操作-递归操作,python,json,recursion,kivy,Python,Json,Recursion,Kivy,我有json存储数据,需要添加新数据或更新现有数据。 如果类型为LAYOUT,则检查elemets prop中的子项 if self.store.exists('renderComponentArray'): # print('renderComponentArray exists:', self.store.get('renderComponentArray')['elements']) localStagedElements =
if self.store.exists('renderComponentArray'):
# print('renderComponentArray exists:', self.store.get('renderComponentArray')['elements'])
localStagedElements = self.store.get('renderComponentArray')['elements']
#######################
# First just root
if self.currentLayoutId == None:
localStagedElements.append(calculatedButtonData)
else:
isFounded = False
for index, item in enumerate(localStagedElements):
if item['id'] == self.currentLayoutId:
localStagedElements[index]['elements'].append(calculatedButtonData)
isFounded = True
break
if isFounded == False:
for index, item in enumerate(localStagedElements):
if item['type'] == 'LAYOUT':
for sindex, sitem in enumerate(item['elements']):
if sitem['id'] == self.currentLayoutId:
localStagedElements[index]['elements'][sindex]['elements'].append(calculatedButtonData)
break
# Final
self.store.put('renderComponentArray', elements=localStagedElements)
这是硬编码的部分,解决了我需要深入探索无限解的两个层次
我已经为read
proces执行了此操作,但是如果white
我需要通过localStagedElements
我在返回时尝试了它,但在自调用func中进行调试既复杂又缓慢