В вашем коде есть несколько синтаксических и логических ошибок. Python не поддерживает такие операторы, как begining = time() из модуля time и rest = 30 в одной строке. Также присутствуют некоторые ошибки в цикле и использовании функции input.
from time import time
rest = 30
beginning = time()
while rest > 0:
move = input('Ваш ход (off - сдаться):')
if move == 'off':
break
end = time()
rest = 30 - (end - beginning)
print('Осталось', int(rest), ' минут из 30')
print("Игра окончена.")
### Объяснение исправлений:
1. Импорт времени: Вы импортируете функцию time из модуля time правильным образом.
from time import time
2. Инициализация переменных: Разделите инициализацию переменных на отдельные строки.
rest = 30
beginning = time()
3. Цикл: Внутри while цикла используйте условие просто rest > 0.
while rest > 0:
4. Ввод пользователя: Вызовите функцию input для ввода хода пользователя.
move = input('Ваш ход (off - сдаться):')
5. Проверка move: Если игрок введет 'off', то цикл завершается.
if move == 'off':
break
6. Обновление времени: Обновите rest внутри цикла после каждого хода.
end = time()
rest = 30 - (end - beginning)
print('Осталось', int(rest), ' минут из 30')
7. Конец игры: Сообщение об окончании игры печатается после завершения цикла.
print("Игра окончена.")
### Полная программа:
from time import time
rest = 30
beginning = time()
while rest > 0:
move = input('Ваш ход (off - сдаться):')
if move == 'off':
break
end = time()
rest = 30 - (end - beginning)
print('Осталось', int(rest), ' минут из 30')
print("Игра окончена.")
Этот код позволяет пользователю ввести свой ход и отслеживает оставшееся время до 30 минут. Код завершает работу, когда время истекает или когда пользователь вводит 'off'.