Python条码扫描仪缓冲区未清除

2024-05-29 11:47:12 发布

您现在位置:Python中文网/ 问答频道 /正文

操作系统是windows7x64(运行pythonx86),但代码需要能够导出到windowsxp和ubuntulinux。

这部分问题可能与Windows7x64有关。

我正在使用一个USB条形码扫描仪,是HID键盘兼容。

打开文件夹中的命令提示符键盘.py文件存在并执行它。

它第一次工作得很好,然后退出,好吗。

当我在同一个窗口中重新运行时,扫描仪数据似乎被缓冲了,当进行新的扫描时不再改变。

我试过用以下方法关闭代码:

.flush() .readline() and .read() all to no avail. Is this a flaw in Win7 or am I missing something.

代码:

^{pr2}$

D:\Python Projects\keyboard Input>keyboard.py [)>0617V33SR41P12973001S10515725 Output String: [)>0617V33SR41P12973001S10515725

D:\Python Projects\Keyboard Input>keyboard.py [)>0617V33SR41P12973001S10515725

第二次运行暂停,如图所示。但是,第二次扫描的结果是23次而不是25次!

如果我按Enter脚本就完成了。进一步的扫描也是一样的。


Tags: 代码pyinput键盘usbprojects扫描仪条形码
1条回答
网友
1楼 · 发布于 2024-05-29 11:47:12

为了澄清我之前的评论,请从以下几点开始:

while 1:
  print sys.stdin.readline.strip()

这应该给你一个条形码每次触发按下。如果这是可行的,然后运行程序顺序失败,你需要看看你的条形码扫描仪是如何配置的(这将是一个windows配置问题,而不是python问题)。在


更新:windows控制台在控制台中显示了一些奇怪的地方,您可以使用msvcrt.getch公司(),但这不是一个跨平台的解决方案。实现这种跨平台的一种可能方法是:

^{pr2}$

然后针对getch()编写程序以读取输入。在

相关问题 更多 >

    热门问题