Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python3中的忽略/展平xml元素_Xml_Python 3.x_Xml.etree - Fatal编程技术网

python3中的忽略/展平xml元素

python3中的忽略/展平xml元素,xml,python-3.x,xml.etree,Xml,Python 3.x,Xml.etree,我的xml元素如下所示: <para>Lorem ipsum (R<inf>0</inf>) dolor sit amnet</para> Lorem ipsum(R0)dolor sit amnet 试图用 import xml.etree.ElementTree as ET xml = ET.fromstring('<para>Lorem ipsum (R<inf>0</inf>) dolor sit

我的xml元素如下所示:

<para>Lorem ipsum (R<inf>0</inf>) dolor sit amnet</para>
Lorem ipsum(R0)dolor sit amnet
试图用

import xml.etree.ElementTree as ET

xml = ET.fromstring('<para>Lorem ipsum (R<inf>0</inf>) dolor sit amnet</para>')
xml.text
将xml.etree.ElementTree作为ET导入
xml=ET.fromstring('Lorem ipsum(R0)dolor sit amnet'))
xml.text

导致
'Lorem ipsum(R'
之后的部分被完全忽略。如何使xml解析器忽略/删除此元素?

解决方案简单明了:加入从
.itertext()返回的元素:

将xml.etree.ElementTree作为ET导入
xml=ET.fromstring('Lorem ipsum(R0)dolor sit amnet'))
''.join(xml.itertext())

积分归Jon Clements所有。

解决方案简单明了:连接从
.itertext()返回的元素。

将xml.etree.ElementTree作为ET导入
xml=ET.fromstring('Lorem ipsum(R0)dolor sit amnet'))
''.join(xml.itertext())

荣誉归于Jon Clements。

确实
''.join(您的_xml.itertext())
在您的用例中工作?确实如此!是的,很好的解决方案您介意将您的评论升级为一个问题吗?然后我会接受它,将问题标记为已解决。如果您愿意,请随意自我回答……我有一种感觉,以前可能有人问过它,我有一种直觉,实际上有一个比这个稍好的解决方案-但我可能想一想用
lxml
代替Python的内置
xml
可以做些什么
'.join(您的_xml.itertext())
在您的用例中工作?确实如此!是的,很好的解决方案您介意将您的评论升级为一个问题吗?然后我会接受它,将问题标记为已解决。如果您愿意,请随意自我回答……我有一种感觉,以前可能有人问过它,我有一种直觉,实际上有一个比这个稍好的解决方案-但我可能思考如何使用
lxml
而不是Python的内置
xml
import xml.etree.ElementTree as ET

xml = ET.fromstring('<para>Lorem ipsum (R<inf>0</inf>) dolor sit amnet</para>')
''.join(xml.itertext())