我正在学习python编程的基础课程,我有一个问题。
我在python中有一个字符串,其中包含有关点,线和段的数学信息。
该字符串包含许多必须忽略的信息。但只要找到“point”,“line”或“segment”这两个词,我就需要从这些元素中提取坐标并复制将它们列入清单。
我需要三个不同的列表。一个用来存储积分,另一个用于线路,第三个用于分段。
由于字符串太长,我只会粘贴每种元素的示例(我已经排除了字符串的非相关部分):
<element type="point" label="D">
<show object="true" label="true"/>
<objColor r="0" g="0" b="255" alpha="0.0"/>
<layer val="0"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="1" playing="false"/>
<coords x="6.14" y="3.44" z="1.0"/>
<pointSize val="3"/>
<pointStyle val="0"/>
</element>
<element type="segment" label="a">
<show object="true" label="true"/>
<objColor r="153" g="51" b="0" alpha="0.0"/>
<layer val="0"/>
<labelMode val="0"/>
<auxiliary val="false"/>
<coords x="2.68" y="3.44" z="-12.0192"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<element type="line" label="b">
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.0"/>
<layer val="0"/>
<labelMode val="0"/>
<coords x="-1.3563823178988361" y="3.7135968534106922" z="-13.20117532177342"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<eqnStyle style="implicit"/>
</element>
有什么简单的方法可以做我想要的吗? 提前致谢
答案 0 :(得分:4)
看看BeautifulSoup。它允许您通过ID或标签获取元素。它对基本的XML解析非常有用 您可以使用XML字符串调用美味汤,然后可以调用BeautifulSoup方法