我最近一直在研究诅咒在Python中是如何工作的。我遵循了这里的教程:Curses Programming with Python,并且我成功地将它们的代码弄乱了,以便将文本正确地输出到控制台屏幕中的各个位置。你知道吗
我的问题是:
为什么有些函数是模块的属性,例如curses.noecho()
但是其他函数是屏幕对象的属性,例如sreen_instance.keypad(True)
?你知道吗
让screen实例指定noecho()
或cbreak()
之类的内容,而不是模块,对我来说是有意义的。你知道吗
这背后的原因是什么?是否有任何一般规则来识别函数是模块的属性,还是Curses库中对象实例的属性?你知道吗
尽管将“stdscr”命名为“标准屏幕”,但这是一个诅咒窗口(如果有子窗口,它是顶级窗口)。你知道吗
属性位于curses级别或window级别,因为这就是相应函数在curses中的组织方式。大多数Python绑定都具有与C库相同的名称和类似的参数(允许Python绑定中的可选参数减少使用的名称数量,例如Python中的^{} 与C中的^{} )。你知道吗
要了解它是如何工作的,我只需看看curses C接口:任何使用} )的东西都将在Python绑定中作为窗口属性(或函数)实现,而那些不使用
WINDOW*
参数(将getch()
等别名计算为^{WINDOW
参数的将是诅咒属性(或函数)。你知道吗相关问题 更多 >
编程相关推荐