在Python中定义强类型变量

时间:2016-06-28 00:48:41

标签: python strong-typing

Intellisence无法帮助对象的Python成员,因为对象类型只能在运行时知道。有没有办法指定变量的类型?

E.g。

import xml.etree.ElementTree

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

有没有办法写出类似的东西:

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

1 个答案:

答案 0 :(得分:3)

有一种方法可以迫使香草PyCharm将其视为某种东西,然而,它确实会产生开销:

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

通过将其包装在if isinstance()中,PyCharm会推断出它的类型并允许你使用自动完成。

这不太理想,但那是Python 耸肩