这段代码
select.select([sys.stdin], [], [], 1.0)
在Linux上完全符合我的要求,但在Windows中却没有.
我已经使用kbhit()在msvcrt之前看数据是否可用标准输入读取,但在这种情况下,它总是返回0.另外msvcrt.getch()返回'\xff'而sys.stdin.read(1)返回'\x01'.似乎msvcrt函数表现不正常.
kbhit()
msvcrt
0
msvcrt.getch()
'\xff'
sys.stdin.read(1)
'\x01'
不幸的是我不能使用TCP套接字,因为我无法控制应用程序说我的Python程序.