【发布时间】:2019-01-13 23:11:27
【问题描述】:
这是我的代码:
while True:
prompt = "Enter code: "
code = input(prompt)
if code == "123":
open_door()
当用户在没有具有“Enter”键的 USB 键盘上键入“123”时,程序会自动打开一扇门。
由于我的键盘没有“Enter”键,我想在 5 秒后强制输入“Enter”。循环开始 5 秒后,无论输入什么,程序都会按“Enter”。如果有任何机会code在按下“Enter”时成功按住“123”,则门打开;否则,还有第二次机会。
我该怎么做?
添加信息:该程序将在 Raspberry Pi 3 中运行,但我使用 Mac 进行测试。
请注意,“购买带有“Enter”键的键盘是不可能的,因为它实际上不是键盘;它是一个 RFID 阅读器,其工作原理与键盘完全一样。为了便于理解,我更喜欢使用“键盘”。
【问题讨论】:
-
指定一些结束字符并尝试使用这个package按字符阅读。
-
忽略我的第一条评论,我看错了。没有这个技术的图书馆吗?我发现它依赖于标准
input()很不寻常 -
@roganjosh 它不依赖于标准
input()。其实它什么都不依赖。它是一个 USB 读卡器,当靠近 RFID 卡时,它可以像键盘一样输入卡的代码。它只是“按键”,但最后没有按“Enter”。如果我打开记事本,它会将卡的代码输入到记事本中,如果我打开计算器,它会将代码输入到计算器中。
标签: python python-3.x multithreading input time