Нужно сделать так, чтобы у человека играющего в игру начинался таймер в 10 секунд во время того как он будет вводить слово

Рейтинг: 0Ответов: 0Опубликовано: 05.03.2023
import time

print('(Небольшая инструкция по мини игре)')
print('В мини игре вам будет дан ряд из 11 символов типа: (a8РrоC5тоtК) и вам нужно будет составить слово из 5 букв в данном случае Росток')
a18 = input('На ответ вам будет дано 10 секунд вы готовы начать? варианты ответа: Да: ')
if a18 == 'Да':                                            
    while True:
        print('еCГ7uр2амlм')
        a19 = input('Введите слово')
        time.sleep(10)
                                                                                            
        if a19 == 'Грамм':
            print('Победа')
        else:
            print('Вы проиграли')
            break

Нужно сделать так, чтобы у человека играющего в игру начинался таймер в 10 секунд во время того как он будет вводить слово. То есть, чтобы таймер шел даже до того, как человек введет что-то в input, а если не успеет ввести за 10 секунд или введет не то слово то выведется надпись Вы проиграли но если успеет ввести слово Грамм за 10 секунд то вывод Победа. Знаю что модуль time для этого не подходит так что нужна ему замена .

Появилась проблема с тем что скрипт должен "Умирать" когда кончается таймер вот код:

import time
from threading import Timer

print('В мини игре вам будет дан ряд из 11 символов типа: (a8РrоC5тоtК) и вам нужно будет составить слово из 5 букв в данном случае Росток')
a18 = input('На ответ вам будет дано 10 секунд вы готовы начать? варианты ответа: Да: ')
if a18 == 'Да':                                            
    while True:
        print('Уровень 1')
        print('еCГ7uр2амlм')                                                                                          
        ti = 10
        t = Timer(ti, print, ['Время вышло'],)
        t.start()
        p = "У вас есть %d секунд чтобы ввести слово\n" % ti
        a19 = input(p)

        if a19 == 'Грамм':
            print('Победа')
            time.sleep(0.2)
            print('Уровень 2')
            print('sЛk2е5сg1ка')                                                                                     
            ti1 = 8
            t1 = Timer(ti1, print, ['Время вышло'],)
            t1.start()
            p1 = "У вас есть %d секунд чтобы ввести слово\n" % ti1
            a20 = input(p1)
            if t1 == 0:
                break
            if a20 == 'Леска':
                print('Победа')

Ответы

Ответов пока нет.