XML-файл выглядит так:
<?xml version="1.0" encoding="UTF-8"?>
<fee_config>
<fees member_group="00400F" mail_retail="MAIL">
<admin_fee>0.76</admin_fee>
<processing_fee>1.83</processing_fee>
</fees>
<fees member_group="00400F" mail_retail="RETAIL">
<admin_fee>1.335</admin_fee>
<processing_fee>1.645</processing_fee>
</fees>
<fees member_group="00460G" mail_retail="MAIL">
<admin_fee>0.88</admin_fee>
<processing_fee>1.18</processing_fee>
</fees>
...
И мой код:
import xml.etree.ElementTree as xml
tree = xml.parse('/data/fees.xml')
root = tree.getroot()
out={}
inn={}
for child in root:
group=child.attrib['member_group']
mail=child.attrib['mail_retail']
out.setdefault(group,inn)
inn.setdefault(mail,{'admin_fee':0,'processing_fee':0})
out[group][mail]['admin_fee']=child[0].text
out[group][mail]['processing_fee']=child[1].text
print(out)
Я хочу вычислить admin_fee
и processing_fee
для каждой группы участников. Но результат дает каждой группе участников одинаковое значение. Как я могу исправить свой код?