Ich gehe durch Zed Shaws Lerne Python auf dem harten Weg und als eine der Übungen werden wir gebeten, ein Spiel zu erstellen. Ich wollte ein reimendes Spiel erstellen, das ein Wort ausgab und der Spieler hatte 5 Sekunden, um ein Wort zu erraten, das sich mit dem ausgedruckten Wort reimte.Wie man einen Timer gleichzeitig in Python ausführt
Ich war in der Lage, das Spiel ohne Timer zu arbeiten. Allerdings kann ich nicht herausfinden, wie man den Timer gleichzeitig mit dem Spiel laufen lässt. Unten ist der Code:
#libraries
libs = [about, cake, chart, score]
#points
p = 0
#timer
class countdown(object):
def __init__(self, timer):
self.timer = timer
while timer != 0:
print "timer: %i" % timer
sleep(1)
timer -= 1
else:
exit("You ran out of time!")
class engine(object):
# randomly select a library
i = randint(0, len(libs)-1)
randlib = libs[i].words.split(' ')
rhymeword = sample(randlib, 1)
print rhymeword
guess = raw_input("> ")
while guess not in randlib:
print rhymeword
guess = raw_input("> ")
else:
# to reset the timer
timer = 5
# points assignment
if guess in libs[i].onesyl.split(' '):
p += 1
print "Points: %s" % p
elif guess in libs[i].twosyl.split(' '):
p += 2
print "Points: %s" % p
elif guess in libs[i].threesyl.split(' '):
p += + 3
print "Points: %s" % p
t = countdown(5)
e = engine()
t.start()
e.start()
Was würde ich tun während des Timer wird, während der Benutzer versucht zu erraten und dann den Timer neu starten, sobald eine richtige Antwort geben.
Ich schaute in der Python-Dokumentation in Multiprocessing, aber ich war mir nicht sicher, wie man das macht.
Das ist ein erstaunlicher Mann, vielen Dank. –