在 Python 中定义强类型变量

Define strong-typed variables in Python

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

例如

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'):

有一种方法可以强制 vanilla 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 耸耸肩