这些是什么意思?
def f(a: {int, float}):
pass
我在通过 PyCharm 获取文档时在一些标准 Python 模块中看到过这种语法,但我不知道它意味着什么。我的示例中
a
的暗示类型是什么?我可以向此函数传递什么类型?
我看到的具体示例是在
tkinter
的 Frame
__init__
方法中,其中 master
参数的类型为 {tk, _w}
。
这是一个提示,告诉您它想要一个具有命名属性“int”和“float”的对象——或者更具体地说,对于 tkinter“tk”和“_w”
我在 pycharm 中编写了一个最小的示例:
检查 python 库 sources - 您可以看到有人尝试访问
master.tk
和 master._w
。这就是 pycharm 能够推断出参数 master 的类型的全部内容,因此它以这种方式将其浮动到 IDE。