2017-10-06 7 views
0

を収集した後ここに私のコードです:ブレークtime.sleep()データ

from threading import Thread 
from time import sleep 
from msvcrt import getch 

key = 0 

def ProcessKey(key): 
    if key == 97: 
     return 1 
    elif key == 32: 
     return 2 
    elif key == 13: 
     return 3 
    else: 
     return 0 

def Check(): 
    sleep(2) 
    if key != 0: 
     return 

Thread(target = Check()).start() 
key = ord(getch()) 
print(ProcessKey(key)) 

時限式の入力は、入力に入るの誰かをカットでうまく動作しますが、誰かが時間内に入力を入力した場合、私は完全な2秒を待たなければなりません次のコード行が実行される前に実行されます。誰かが入力してから2秒後に残りの部分をスキップできますか?

答えて

0
from threading import Thread 
from time import sleep 
from msvcrt import getch 

key = 0 

def ProcessKey(key): 
    if key == 97: 
     return 1 
    elif key == 32: 
     return 2 
    elif key == 13: 
     return 3 
    else: 
     return 0 

def Check(): 
    sleep(2) 
    if key != 0: 
     return 

Thread(target = Check).start() ##Dont call the function just enter the name I think this will solve 
key = ord(getch()) 
print(ProcessKey(key)) 
+0

私は今、たくさんのおかげで計画されているように機能します! – ConnorReardon