Я анализирую xml-файл с помощью lxml python 3. Преобразование элементов в dict из списка dict. Но код работает не так, как должен, и получая что-то странное, я попытался с отладками и не смог выяснить, в чем проблема:
Ниже приведен фрагмент, который я написал:
tree = lxml.etree.parse(self.meetingXmlFile)
root = tree.getroot()
roomList = []
for child in root.iter():
# print("Tag is ::%s and text is ::%s" % (child.tag , child.text))
if child.tag == "TowerName":
roomList.clear()
indexTower = child.text
# print(indexTower)
elif child.tag == "BigMeetingRooms" :
roomSize = "bigMeetingRoom"
elif child.tag == "SmallMeetingRooms":
roomSize = "smallMeetingRoom"
elif child.tag == "MeetingRoomName" :
roomName = child.text
elif child.tag == "MeetingRoomMailId" :
roomMailId = child.text
roomDict={roomName:roomMailId}
roomList.append(roomDict)
if roomSize == "bigMeetingRoom" :
# print(indexTower, " ", roomName, " ", roomMailId)
self.bigMeetingRoom[indexTower] = roomList
print(indexTower, " ", self.bigMeetingRoom[indexTower])
print(self.bigMeetingRoom)