2016-06-28 14 views
0

Intellisence kann mit Python-Mitgliedern eines Objekts nicht helfen, da der Objekttyp nur zur Laufzeit bekannt ist. Gibt es eine Möglichkeit, den Typ der Variablen anzugeben?Definieren von stark typisierten Variablen in Python

z.

import xml.etree.ElementTree 

root = xml.etree.ElementTree.parse(x).getroot() 
for data in root.findall('./data'): 
    data. 

Gibt es eine Möglichkeit etwas wie zu schreiben:

for data:xml.etree.Element in root.findall('./data'): 
+5

würde ich mit einem besseren Text-Editor für Python empfehlen. Darüber hinaus ist Python stark typisiert, aber nicht statisch typisiert. –

+0

Pycharm IDE zu retten! – felipsmartins

+0

Ich benutze PyCharm/IntelliJ – Bishoy

Antwort

2

Es gibt einen Weg Vanille PyCharm zu zwingen, es als etwas zu denken, ist es jedoch nicht entstehen Kopf:

root = xml.etree.ElementTree.parse(x).getroot() 
     for data in root.findall('./data'): 
      if isinstance(data, xml.etree.ElementTree.Element): 
       data. 

Indem es in if isinstance() eingepackt wird, wird PyCharm seinen Typ ableiten und Sie können Auto-Vervollständigung verwenden.

Es ist nicht ideal, aber das ist Python zuckt