Python中的主要侦听器?

Python中的主要侦听器?,第1张

Python中的主要侦听器

不幸的是,做到这一点并不容易。如果您要制作某种文本用户界面,则可能需要研究

curses
。如果您想要像通常在终端中那样显示内容,但又想要这样的输入,那么您将不得不使用
termios
,不幸的是,在Python中,该文档似乎文献很少。不幸的是,这些选项都不是那么简单。此外,它们在Windows下不起作用。如果您需要它们在Windows下运行,则必须使用PDCurses代替
curses
或pywin32而不是
termios


我能够做到这一点。它打印出您键入的键的十六进制表示形式。正如我在对您的问题的评论中所说的那样,箭是很棘手的。我想你会同意的。

#!/usr/bin/env pythonimport sysimport termiosimport contextlib@contextlib.contextmanagerdef raw_mode(file):    old_attrs = termios.tcgetattr(file.fileno())    new_attrs = old_attrs[:]    new_attrs[3] = new_attrs[3] & ~(termios.ECHO | termios.ICANON)    try:        termios.tcsetattr(file.fileno(), termios.TCSADRAIN, new_attrs)        yield    finally:        termios.tcsetattr(file.fileno(), termios.TCSADRAIN, old_attrs)def main():    print 'exit with ^C or ^D'    with raw_mode(sys.stdin):        try: while True:     ch = sys.stdin.read(1)     if not ch or ch == chr(4):         break     print '%02x' % ord(ch),        except (KeyboardInterrupt, EOFError): passif __name__ == '__main__':    main()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5661999.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存