我正在尝试编写一个可以在标准Python,iPython和qtConsole中跨平台工作的库。
除了键盘交互之外,一切都有效。
我想要'按任意键'或'按Y / N / Esc'
在Windows中,使用msvcrt和kbhit很容易。 (虽然我没有在Windows中尝试过qtconsole) 在Linux中,这可以在Python和iPython下使用stdin和termios。
问题是qtconsole似乎使用非阻塞标准输入并且不支持termios。
你会认为这将是一件好事,只需刷新标准输入,然后检查它是否有一个字符。问题是这似乎不起作用。它永远不会返回一个角色。就好像ipython本身正在妨碍终端提供stdin的方式。
在qtconsole中读取sys.stdin的正确方法是什么?
(顺便说一句,qtconsole没有标签,这个问题是关于qtconsole,而不仅仅是iPython)