我想弄清楚什么放在我的类型注释在这个函数的顶部。Python类型暗示与curses
我有以下简单的例子:
import curses
def main(stdscr):
stdscr.clear()
stdscr.addstr(2, 0, "What is the type of stdscr?")
stdscr.addstr(5, 0, "It is: {}".format(type(stdscr)))
stdscr.refresh()
stdscr.getkey()
curses.wrapper(main)
这将返回<type '_curses.curses window'>
。这看起来好像不能和Type提示一起工作,因为它有一个空格。
预计的结果将是
编辑:这里的文档不正确。WindowObject
列于
the documentation。我在curses模块本身中找不到WindowObject的路径。
如何用精确的类型注释编写main?
只是不。 'WindowObject'是一个文档错误;窗口对象类型的名称是未记录的,并且可能会更改,并且我认为窗口对象类型甚至不可用作为模块属性。 – user2357112
Absolutamente right @ user2357112,type()方法总是告诉类型对象,不管它是什么 –
尽管这是一个奇怪的情况。我没有看到一个类型(),其中有一个空格。打字库如何处理这些?我并不是说我需要这样做,但这是一个奇怪的例子。 – Technoloft