Hi all, I have a understanding problem with return values from xmltodict.
I have a xml file. Content: <?xml version="1.0" encoding="utf-8" ?> <profiles> <profile id='visio02' revision='2015051501' > <package package-id='0964-gpg4win' /> </profile> </profiles> <!-- --> With code __f_name = '<path_to_file>' with open(__f_name) as __fd: __doc = xmltodict.parse(__fd.read()) __doc I get OrderedDict([(u'profiles', OrderedDict([(u'profile', OrderedDict([(u'@id', u'visio02'), (u'@revision', u'2015051501'), (u'package', OrderedDict([(u'@package-id', u'0964-gpg4win')]))]))]))]) If I use __doc['profiles']['profile']['package'][0]['@package-id'] I get Traceback (most recent call last): File "<input>", line 1, in <module> KeyError: 0 If I change xml file like this: <?xml version="1.0" encoding="utf-8" ?> <profiles> <profile id='visio02' revision='2015051501' > <package package-id='0964-gpg4win' /> <package package-id='0965-gpg4win' /> </profile> </profiles> and run code from above the result is: OrderedDict([(u'profiles', OrderedDict([(u'profile', OrderedDict([(u'@id', u'visio02'), (u'@revision', u'2015051501'), (u'package', [OrderedDict([(u'@package-id', u'0964-gpg4win')]), OrderedDict([(u'@package-id', u'0965-gpg4win')])])]))]))]) No prints __doc['profiles']['profile']['package'][0]['@package-id']: u'0964-gpg4win' Can everybody explain this? Many thanks in advance -- https://mail.python.org/mailman/listinfo/python-list