首页 > 解决方案 > 在python变量中读取和存储xml数据

问题描述

我有一个这样的 XML:

<?xml version="1.0"?>
<Server>
  <name>johny</name> 
  <address>statestreet</address>
  <city>Hyderabad</city> 
</Server>

我需要将每个属性存储在代码中的单独变量中。所以我正在编写这样的代码

import xml.etree.ElementTree as et
tree=et.parse('sample.xml')  
root=tree.getroot()
for i in root.findall('Server'):
    name=i.find('name').text
    address = i.find('address').text
    city = i.find('city').text

但它没有存储任何东西。请帮助我

标签: python-2.7xml-parsing

解决方案


我有一个解决方案。我写了一个函数:

def xmldata():
    config_xml = et.parse('sample.xml')
    root = sample.getroot()
    for child in root.getchildren():
        if child.tag=='name':
            name =child.text
        if child.tag=='address':
            address =child.text
        if child.tag=='city':
            city =child.text

    return name,address,city

但是当我在主函数中调用这个def时,它是列表的形式。('johny','statestreet','hyderabad')我怎样才能以字典的形式得到它(name:'johny',address:'statestreet',city:'hyderabad')


推荐阅读