擅长:python、mysql、java
<p><a href="https://docs.python.org/2/library/xml.etree.elementtree.html#xml.etree.ElementTree.Element.find" rel="nofollow noreferrer">docs</a>显示<code>.find()</code>只获取第一个匹配的子元素。听起来你想要<code>.findall()</code></p>
<p>以下几点似乎对我有用:</p>
<pre class="lang-py prettyprint-override"><code>import xml.etree.ElementTree as ET
tree = ET.parse(input_file)
root = tree.getroot()
for record in root:
xpath = "{http://www.loc.gov/MARC21/slim}datafield[@tag='993']/{http://www.loc.gov/MARC21/slim}subfield[@code='a']"
if record.findall(xpath) is not None:
for symbol in record.findall(xpath):
print symbol.text
</code></pre>