在编写python代码时,我们有时会发现在程序来到raw_input()之前的时候键盘可能会输入一些数据保存在缓冲区,与我们真正想输入raw_input()的数据混在一起。就像下面代码所示的情况一样:
import time
a = raw_input('first input')
time.sleep(10)
#这个时候混入了一些键盘输入
b = raw_input('second input')
为了解决这类问题,这里介绍一个函数。函数功能描述如下:
termios.tcflush(fd, queue):
丢弃文件描述符fd中的数据队列。变量queue表示具体待处理的队列,如TCIFLUSH表示输入队列,TCOFLUSH表示输出队列,TCIOFLUSH同时表示输入输出队列。
使用范例如下: