# импортировать модули
import tkinter
import random
# список возможных цветов.
colours = ['Red','Blue','Green','Pink','Black','Yellow','Orange','White','Purple','Brown']
score = 0
# оставшееся время игры, изначально 30 секунд.
timeleft = 30
# функция, которая запускает игру.
def startGame(event):
if timeleft == 30:
countdown() # запустить таймер обратного отсчета.
nextColour() # запустить функцию для # выберите следующий цвет.
# Функция для выбора и
# отобразить следующий цвет.
def nextColour():
# использовать глобально объявленный «счет»
Переменные # и play выше.
global score
global timeleft
# если игра в данный момент в игре
if timeleft > 0:
# сделать поле ввода текста активным.
e.focus_set()
# если напечатанный цвет равен
# к цвету текста
if e.get().lower() == colours[1].lower():
score += 1
# очистить поле ввода текста.
e.delete(0, tkinter.END)
random.shuffle(colours)
# изменить цвет на тип, изменив
# текст _и_ цвет к случайному значению цвета
label.config(fg = str(colours[1]), text = str(colours[0]))
# обновить счет.
scoreLabel.config(text = "Score: " + str(score))
# Функция таймера обратного отсчета
def countdown():
global timeleft
# если игра в игре
if timeleft > 0:
# уменьшить таймер.
timeleft -= 1
# обновить оставшееся время
timeLabel.config(text = "Time left: "
+ str(timeleft))
# запустите функцию снова через 1 секунду.
timeLabel.after(1000, countdown)
Код водителя
# создать окно с графическим интерфейсом
root = tkinter.Tk()
# установить заголовок
root.title("COLORGAME")
# установить размер
root.geometry("375x200")
# добавить ярлык с инструкцией
instructions = tkinter.Label(root, text = "Type in the colour"
"of the words, and not the word text!",
font = ('Helvetica', 12))
instructions.pack()
# добавить метку
scoreLabel = tkinter.Label(root, text = "Press enter to start",
font = ('Helvetica', 12))
scoreLabel.pack()
# добавить оставшееся время
timeLabel = tkinter.Label(root, text = "Time left: " +
str(timeleft), font = ('Helvetica', 12))
timeLabel.pack()
# добавить метку для отображения цветов
label = tkinter.Label(root, font = ('Helvetica', 60))
label.pack()
# добавить текстовое поле для ввода
# печатать в цветах
e = tkinter.Entry(root)
# запустить функцию startGame
# когда нажата клавиша ввода
root.bind('<Return>', startGame)
e.pack()
# установить фокус на поле ввода
e.focus_set()
# запустить графический интерфейс
root.mainloop()
import tkinter
import random
# список возможных цветов.
colours = ['Red','Blue','Green','Pink','Black','Yellow','Orange','White','Purple','Brown']
score = 0
# оставшееся время игры, изначально 30 секунд.
timeleft = 30
# функция, которая запускает игру.
def startGame(event):
if timeleft == 30:
countdown() # запустить таймер обратного отсчета.
nextColour() # запустить функцию для # выберите следующий цвет.
# Функция для выбора и
# отобразить следующий цвет.
def nextColour():
# использовать глобально объявленный «счет»
Переменные # и play выше.
global score
global timeleft
# если игра в данный момент в игре
if timeleft > 0:
# сделать поле ввода текста активным.
e.focus_set()
# если напечатанный цвет равен
# к цвету текста
if e.get().lower() == colours[1].lower():
score += 1
# очистить поле ввода текста.
e.delete(0, tkinter.END)
random.shuffle(colours)
# изменить цвет на тип, изменив
# текст _и_ цвет к случайному значению цвета
label.config(fg = str(colours[1]), text = str(colours[0]))
# обновить счет.
scoreLabel.config(text = "Score: " + str(score))
# Функция таймера обратного отсчета
def countdown():
global timeleft
# если игра в игре
if timeleft > 0:
# уменьшить таймер.
timeleft -= 1
# обновить оставшееся время
timeLabel.config(text = "Time left: "
+ str(timeleft))
# запустите функцию снова через 1 секунду.
timeLabel.after(1000, countdown)
Код водителя
# создать окно с графическим интерфейсом
root = tkinter.Tk()
# установить заголовок
root.title("COLORGAME")
# установить размер
root.geometry("375x200")
# добавить ярлык с инструкцией
instructions = tkinter.Label(root, text = "Type in the colour"
"of the words, and not the word text!",
font = ('Helvetica', 12))
instructions.pack()
# добавить метку
scoreLabel = tkinter.Label(root, text = "Press enter to start",
font = ('Helvetica', 12))
scoreLabel.pack()
# добавить оставшееся время
timeLabel = tkinter.Label(root, text = "Time left: " +
str(timeleft), font = ('Helvetica', 12))
timeLabel.pack()
# добавить метку для отображения цветов
label = tkinter.Label(root, font = ('Helvetica', 60))
label.pack()
# добавить текстовое поле для ввода
# печатать в цветах
e = tkinter.Entry(root)
# запустить функцию startGame
# когда нажата клавиша ввода
root.bind('<Return>', startGame)
e.pack()
# установить фокус на поле ввода
e.focus_set()
# запустить графический интерфейс
root.mainloop()