Изначально у меня была такая программа:
inst = {}
class IContainer:
dicList = {}
for i in range(10):
inst[i] = IContainer()
def FindEnd(node):
if node.text != None:
inst[counter].dicList[node.tag] = node.text
else:
for subNode in node:
FindEnd(subNode)
counter = 0
for element in root:
if element.tag == "Items":
for subE in element:
if subE.tag == "Item":
for subSubE in subE:
FindEnd(subSubE, counter)
counter += 1
это прекрасно работает, я смог разобрать материал в словарь, вместо этого я хочу создать список динамически.
так
counter = 0
for element in root:
if element.tag == "Items":
for subE in element:
if subE.tag == "Item":
inst[counter] = IContainer()
for subSubE in subE:
FindEnd(subSubE)
for i in range(len(inst)):
print inst[i]
print inst[i].dicList
counter += 1
Когда я запускаю это
for i in range(len(inst)):
print inst[i]
print inst[i].dicList
все экземпляры заменены адресом и данными последнего цикла ... Я не имею ни малейшего представления, что происходит не так.