Python lxml-返回清理过的对象而不仅仅是字符串的函数

Python lxml-返回清理过的对象而不仅仅是字符串的函数,python,xml,django,lxml,Python,Xml,Django,Lxml,下面是一些代码: from lxml import etree url = 'http://www.google.com/ig/api?stock=aapl' data = etree.parse(url) root = data.getroot() finance = root[0] def clean(var, num): var = str(finance[num].attrib).split("'")[-2] print var 我想将变量作为一个对象返回,以便以

下面是一些代码:

from lxml import etree
url = 'http://www.google.com/ig/api?stock=aapl'
data = etree.parse(url) 
root = data.getroot()
finance = root[0]


def clean(var, num):
    var = str(finance[num].attrib).split("'")[-2]
    print var

我想将变量作为一个对象返回,以便以后调用


我知道问题出在哪里-str()-但不知道如何解决它,因为直接使用变量不允许我对
.attrib
进行必要的操作。split

假设要从XML收集信息,请执行以下操作:

data = dict()
for elem in finance:
    data[elem.tag] = elem.attrib['data']
您将在
data
变量中获得一个字典,如:

{'symbol': 'AAPL', 'company': 'Apple Inc.', 'currency': 'USD', 'volume': '19145182' ... }
您将能够访问特定的信息:

print data['company']

“我想将变量作为一个对象返回,以后可以调用。”请详细解释。你能举例说明你想如何使用你的物品吗?提供您希望如何利用未来解决方案的最低测试用例。使用
var=finance[num].attrib['data']
-它可以更好地阐明您的工作。谢谢!这是一种不那么脆弱的方法。