【发布时间】:2017-06-11 16:30:32
【问题描述】:
我想创建一个等待输入的函数,如果 2 秒内没有任何输入,则跳过输入并继续该函数的其余部分。
我从另一个线程尝试了这个功能:
import time
from threading import Thread
answer = None
def check():
time.sleep(2)
if answer != None:
return "ayy"
print("Too slow")
return "No input"
Thread(target = check).start()
answer = input("Input something: ")
print(answer)
此代码要求输入,如果 2 秒内未添加任何输入,则会打印“太慢”。但是它永远不会继续打印(答案),我认为它一直在等待用户输入。
我想询问用户输入,如果需要的时间太长,它只需要 input = None 并转到它下面的函数。我查看了涉及信号的超时方法,但这仅适用于 linux 和 windows 上的 im。
【问题讨论】: