Python:自动完成功能可以用于列表中的元素吗?

问题描述 投票:0回答:1

Python 在函数参数和函数返回类型中具有类型提示。类的元素是否有类似的东西?我希望能够在以下示例中使用自动完成功能:

class MyClass:
    def hello(self):
        print("Hello")

mylist = []
mylist.append(MyClass())

for i in mylist:
    i.hello() # No autocomplete here

我知道这取决于 IDE,但我的问题是关于某些语言功能,例如上面提到的代码提示。类似于

mylist = [] : MyClass
或类似

python autocomplete python-typing
1个回答
6
投票

是的,可以。这在 WingIDE 中有效(我确信在 PyCharm 中也有效):

from typing import List

class MyClass:
    def hello(self):
        print("Hello")

mylist: List[MyClass] = []
mylist.append(MyClass())

for i in mylist:
    i.hello() # autocompleted here

如果您使用 3.6 版本之前的 python,只需使用旧式语法:

mylist = []  # type: List[MyClass]

自动完成功能对于任何一种语法都可以正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.