我遇到了图书馆getch()
功能的问题。curses
假设我们有以下程序:
import curses
def main(stdscr):
while 1:
c = stdscr.getch()
stdscr.addstr(chr(c) + ": " + str(c) + "\n")
curses.wrapper(main)
让我们运行它,然后输入以下字符:a
, <backspace>
,œ
然后输出是:
a: 97
ć: 263
Å: 197
如您所见,a
角色被正确拍摄。然而,其他人不是。我只想得到退格键'\b'
和 unicode 字符œ
,但我们得到了别的东西。
为什么会getch()
这样,我怎样才能得到想要的行为?
编辑:
让我强调一下,这不是打印字符的问题,而是读取字符的问题。即,运行stdscr.addstr('œ')
确实打印œ
.