Я пытался создать код Python, используя tkinter. Логика такова: если кнопка 1 будет нажата в течение 2 секунд, игра будет окончена. Если кнопка 2 не будет нажата в течение 2 секунд, игра будет окончена. Но проблема в том, что когда я нажимал кнопку2 в течение 2 секунд, игра отображалась окончена. Я пытался разобраться в проблеме, но не смог. Код приведен ниже.
from tkinter import *
import tkinter.font as font
import random
root=Tk()
root.title("Simon says")
root.geometry("1366x768")
font1 = font.Font(family="Serif", size=20, weight="bold")
font2 = font.Font(family="Serif", size=13, weight="bold")
font3 = font.Font(family="Serif", size=30, weight="bold")
a0=Label(root,text="",fg="green",font=font1)
button1=Button(root,text="click",fg="green",bg="#FFD700",font=font2,command=lambda: button1_click())
button2=Button(root,text="click",fg="green",bg="#FFD700",font=font2,command=lambda: button2_click())
def clear_widgets():
for widget in root.winfo_children():
if widget != output:
widget.pack_forget()
output=Label(root,font=font2)
button1_pressed=0
button2_pressed=0
def button1_click():
global button1_pressed
button1_pressed=1
clear_widgets()
game_over=Label(root,text="Game over",font=font3,fg="red")
game_over.pack()
def button2_click():
global button2_pressed
button2_pressed=1
loop()
def loop():
global button1_pressed
global button2_pressed
button1_pressed = 0
button2_pressed = 0
a = random.randint(1,2)
if a==1:
a0.config(text="Simon doesn't say,click")
a0.pack()
button1.pack()
button2.pack_forget()
root.after(2000,lambda: check_button1())
else:
a0.config(text="Simon says,click")
a0.pack()
button2.pack()
button1.pack_forget()
root.after(2000, lambda: check_button2())
def check_button1():
if button1_pressed==0:
loop()
def check_button2():
if button2_pressed==0:
clear_widgets()
game_over = Label(root, text="Game over", font=font3, fg="red")
game_over.pack()
loop()
root.mainloop()
Вывод: надеюсь, кто-нибудь мне поможет.
Я пытался разобраться в проблеме, но не смог. Я вставил код в Chatgpt. Чатгпт не смог решить. Я ожидал, что компьютер скажет: щелкать или не щелкать. Если он говорит «щелкнуть», мне нужно нажать в течение 2 секунд, иначе игра будет окончена. Если там написано не нажимать, нажатие приведет к завершению игры. Если на нее не нажать в течение 2 секунд, цикл продолжится.
Я пытался создать код Python, используя tkinter. Логика такова: если кнопка 1 будет нажата в течение 2 секунд, игра будет окончена. Если кнопка 2 не будет нажата в течение 2 секунд, игра будет окончена. Но проблема в том, что когда я нажимал кнопку2 в течение 2 секунд, игра отображалась окончена. Я пытался разобраться в проблеме, но не смог. Код приведен ниже. [code]from tkinter import * import tkinter.font as font import random root=Tk()
def clear_widgets(): for widget in root.winfo_children(): if widget != output: widget.pack_forget() output=Label(root,font=font2)
button1_pressed=0 button2_pressed=0
def button1_click(): global button1_pressed button1_pressed=1 clear_widgets() game_over=Label(root,text="Game over",font=font3,fg="red") game_over.pack()
def button2_click(): global button2_pressed button2_pressed=1 loop()
def loop(): global button1_pressed global button2_pressed button1_pressed = 0 button2_pressed = 0 a = random.randint(1,2) if a==1: a0.config(text="Simon doesn't say,click") a0.pack() button1.pack() button2.pack_forget() root.after(2000,lambda: check_button1()) else: a0.config(text="Simon says,click") a0.pack() button2.pack() button1.pack_forget() root.after(2000, lambda: check_button2())
def check_button1(): if button1_pressed==0: loop() def check_button2(): if button2_pressed==0: clear_widgets() game_over = Label(root, text="Game over", font=font3, fg="red") game_over.pack() loop() root.mainloop() [/code] Вывод: надеюсь, кто-нибудь мне поможет. Я пытался разобраться в проблеме, но не смог. Я вставил код в Chatgpt. Чатгпт не смог решить. Я ожидал, что компьютер скажет: щелкать или не щелкать. Если он говорит «щелкнуть», мне нужно нажать в течение 2 секунд, иначе игра будет окончена. Если там написано не нажимать, нажатие приведет к завершению игры. Если на нее не нажать в течение 2 секунд, цикл продолжится.
AttributeError: модуль «tkinter» не имеет атрибута «messagebox»
Даже tkinter импорта уже указан в начале. Почему в инструкции tkinter.Tk() нет ошибок?
Я понял, что инструкция import не похожа на #include на языке C, поэтому...
У меня проблема: мое решение содержит папку node_modules с некоторыми библиотеками с длинными путями.
Эти файлы не нужны в выходном каталоге, потому что они нужны только на другом этапе сборки.
Когда я запускаю команду сборки из Visual Studio,...
У меня проблема: мое решение содержит папку node_modules с некоторыми библиотеками с длинными путями.
Эти файлы не нужны в выходном каталоге, потому что они нужны только на другом этапе сборки.
Когда я запускаю команду сборки из Visual Studio,...
У меня есть модуль Python под названием my_module.py в папке ~/my_module. Я хочу вызвать этот модуль из интерпретатора Python, но не знаю его каталога. Я бегу:
import os
os.chdir(os.path.expanduser( ~/my_module ))
У меня есть модуль Python под названием my_module.py в папке ~/my_module. Я хочу вызвать этот модуль из интерпретатора Python, но не знаю его каталога. Я бегу:
import os
os.chdir(os.path.expanduser( ~/my_module ))