用Python解析XML:Typeerror:';str';对象不可调用

用Python解析XML:Typeerror:';str';对象不可调用,python,python-3.x,Python,Python 3.x,我试图在python中解析xml,但我一直遇到这样的错误:TypeError:“str”对象不能在第10行“print”(“Date:,tree.find('Date').text()调用” 我的代码如下: import xml.etree.ElementTree as ET data = '''<person> <date>Wednesday, Oct 14 2020 1:03AM</date> <email hide="yes"

我试图在python中解析xml,但我一直遇到这样的错误:TypeError:“str”对象不能在第10行“print”(“Date:,tree.find('Date').text()调用”

我的代码如下:

import xml.etree.ElementTree as ET

data = '''<person>
<date>Wednesday, Oct 14 2020 1:03AM</date>
<email hide="yes" />
<username>John Doe</username>
</person>'''


tree = ET.fromstring(data)
print("Date:", tree.find('date').text())
print("Email attr:", tree.find('email').get('hide'))
将xml.etree.ElementTree作为ET导入
数据=“”
2020年10月14日星期三凌晨1:03
无名氏
'''
tree=ET.fromstring(数据)
打印(“日期:”,tree.find(“日期”).text()
打印(“电子邮件属性:”,树。查找('Email')。获取('hide'))
提前感谢。

删除
()
后的
。文本

import xml.etree.ElementTree as ET

data = '''<person>
<date>Wednesday, Oct 14 2020 1:03AM</date>
<email hide="yes" />
<username>John Doe</username>
</person>'''


tree = ET.fromstring(data)
print("Date:", tree.find('date').text)  # <-- only `.text`
print("Email attr:", tree.find('email').get('hide'))
删除
()
后的
.text

import xml.etree.ElementTree as ET

data = '''<person>
<date>Wednesday, Oct 14 2020 1:03AM</date>
<email hide="yes" />
<username>John Doe</username>
</person>'''


tree = ET.fromstring(data)
print("Date:", tree.find('date').text)  # <-- only `.text`
print("Email attr:", tree.find('email').get('hide'))

您应该在
.text
之后删除
()
,因为这是一个属性而不是方法:

print("Date:", tree.find('date').text)
print("Email attr:", tree.find('email').get('hide'))

您应该在
.text
之后删除
()
,因为这是一个属性而不是方法:

print("Date:", tree.find('date').text)
print("Email attr:", tree.find('email').get('hide'))

日期的类型为xml.etree.ElementTree.Element,文本是属性,而不是函数。因此错误不可调用。date.text将代替date.text()工作。date的类型为xml.etree.ElementTree.Element,text是一个属性,而不是一个函数。因此错误不可调用。date.text将代替date.text()工作