Python-如何在重定向stdin时读取终端/键盘?

Python-如何在重定向stdin时读取终端/键盘?,python,input,stdin,Python,Input,Stdin,我想在输入重定向发生时从终端/键盘读取: some-command | my-program.py 在Unix下,我读到可以打开os.ttyname(0),但这在Windows(或Cygwin)下不起作用。有没有一种操作系统不可知的方法可以做到这一点?还是有其他办法 我想要的结果是能够检测击键并修改程序的行为。主程序只创建一个或多个线程并等待它们完成,因此我可以在主线程中自由地执行任何操作 如果有帮助的话,我正在使用Python 3.6…使用类似于pynput的东西,我想可能吧?我看了pynp

我想在输入重定向发生时从终端/键盘读取:

some-command | my-program.py
在Unix下,我读到可以打开
os.ttyname(0)
,但这在Windows(或Cygwin)下不起作用。有没有一种操作系统不可知的方法可以做到这一点?还是有其他办法

我想要的结果是能够检测击键并修改程序的行为。主程序只创建一个或多个线程并等待它们完成,因此我可以在主线程中自由地执行任何操作


如果有帮助的话,我正在使用Python 3.6…

使用类似于
pynput的东西,我想可能吧?我看了pynput,但它会在linux下崩溃,因为它需要X。我可以编写一个使用pynput或ttyname的模块,但如果可能的话,我希望有一个占地面积小的半本地模块。