[python] Jak udělat odpočítávání?

Pavel Kosina geon na post.cz
Pátek Září 14 11:14:53 CEST 2007


Mazlík napsal(a):
> Ahoj :-)
>
> Potřebuju udělat script, kde by hned na začátku byl raw_input a
> odpočítávání. Např:
>   

V archivu jsem vylovil jeden pro Windows.


import threading, Queue, time
import msvcrt # Jen pro MS Windows

vystup = Queue.Queue()
zamek = threading.Lock()

def vlakno1():
    time.sleep(5)
    vystup.put('konec')

def vlakno2():
    print "Ocekavam vstup: ",
    while nasloucham.isAlive():
        if msvcrt.kbhit():
            zamek.acquire()
            vystup.put(raw_input())
            zamek.release()

nasloucham = threading.Thread(target = vlakno1)
cekamvstup = threading.Thread(target = vlakno2)
nasloucham.start()
cekamvstup.start()
while nasloucham.isAlive() or not vystup.empty():
    if not zamek.locked() and not vystup.empty():
        print vystup.get()



Není bez chyby, není takový jaký by měl, ale alespon neco. Jakmile 
napíšeš jediné písmeno, už není možno ukončit vlákno po zadané době.


-- 
geon
Pavel Kosina



Další informace o konferenci Python