Nur numerischen XML-Text analysieren und zählen, einschließlich e-00 oder e + 01

Ich bin ein Python-Neuling. Ich versuche, durch eine XML-Datei zu analysieren und alle Texteingaben zu zählen, die alle numerisch sind, einschließlich angenäherter Werte mit e- oder e +. Z.B. In Anbetracht des folgenden Pseudocodes (jerry.xml),

<data>
<country name="Liechtenstein">
    <rank updated="yes">2</rank>
    <language>english</language>
    <currency>1.21$/kg</currency> 
    <gdppc>141100</gdppc>
    <gdpnp>2.304e+0150</gdpnp>
    <neighbor name="Austria" direction="E"/>
    <neighbor name="Switzerland" direction="W"/>
</country>
<country name="Singapore">
    <rank updated="yes">5</rank>
    <language>english</language>
    <currency>4.1$/kg</currency> 
    <gdppc>59900</gdppc>
    <gdpnp>5.2e-015</gdpnp>
    <neighbor name="Malaysia" direction="N"/>
</country>

Ich würde gerne 6 zurückgeben, nachdem ich 2, 141100, 2.304e + 0150, 5, 59900 und 5.2e-015 gezählt habe, ohne Englisch, 1,21 $ / kg oder 4,1 $ / kg.

Jede Hilfe wäre dankbar. Vorerst habe ich folgendes.

import xml.etree.ElementTree as ET
tree = ET.parse("jerry.xml")
root = tree.getroot()
for text in root.itertext():
    print repr(text)   
charlie = file.writelines(root.itertext())
count = sum(element.firstChild.nodeValue.find(r'\d+') for element in xmldoc.getElementsByTagName('jerry.xml'))

Antworten auf die Frage(2)

Ihre Antwort auf die Frage