我想循环使用给定参数的对象属性并替换一些元素。
对象名称是:DATA
DATA具有以下属性:name [string],version [string]和apps [app对象列表]
应用列表包括应用对象
应用列表中的应用对象具有以下属性:app.name [string]; app.ctrl [名单]
在ctrl列表中,每个项目都有5个值:[value0,[value1a,value1b],value2,value3,value4]
我想遍历对象元素并找到正确的DATA.apps.ctrl列表元素目标并替换值[1] [0]和值[1] [1]:
for app in self.DATA.apps:
if self.SelectedAppID.get() == app.name:
for control in app.ctrl:
if control[0] == self.SelectedCtrl.get():
control[1][0] = valuenew
control[1][1] = valuenew
我找到了我想要改变的应用程序和元素。我想我正在替换它但它不起作用。列表保持不变..
我究竟做错了什么 ?
您没有更新数据对象,您正在更新在循环中创建的变量,这些变量存储为值,而不是作为对主对象的引用。