Advertisement
frecnbr

GuessTheNumber

Apr 3rd, 2025
417
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.21 KB | None | 0 0
  1. import tkinter as tk
  2. from tkinter import messagebox
  3. from random import randint
  4.  
  5. # Функция для перезапуска игры
  6. def restart_game():
  7.     global input_number1, attempts
  8.     input_number1 = randint(1, 100)  # Генерируем новое число
  9.     attempts = 0  # Обнуляем счетчик попыток
  10.     label_out.delete(0, tk.END)  # Очищаем поле ввода
  11.     label_pods.config(text="")  # Очищаем текст подсказки
  12.  
  13. # Функция для проверки числа
  14. def otg():
  15.     global attempts
  16.     attempts += 1
  17.     try:
  18.         label_out1 = int(label_out.get())  # Получаем число из ввода
  19.     except ValueError:
  20.         messagebox.showerror("Ошибка", "Введите число!")
  21.         return
  22.  
  23.     if input_number1 > label_out1:
  24.         label_pods.config(text="Загаданное число больше")
  25.     elif input_number1 < label_out1:
  26.         label_pods.config(text="Загаданное число меньше")
  27.     else:
  28.         messagebox.showinfo("Победа", f"Правильно, это число {input_number1}. Потрачено попыток {attempts}.")
  29.         restart_game()  # Перезапускаем игру после победы
  30.  
  31. # Создание окна
  32. window = tk.Tk()
  33. window.title("FindNumber 1.0")
  34. window.geometry('350x300')
  35.  
  36. frame = tk.Frame(window, padx=10, pady=10)
  37. frame.pack(expand=True)
  38.  
  39. input_number1 = randint(1, 100)
  40. attempts = 0
  41.  
  42. label_in = tk.Label(frame, text="Отгадай число")
  43. label_in.grid(column=1, row=2)
  44.  
  45. label_out = tk.Entry(frame)
  46. label_out.grid(column=2, row=2)
  47. label_out.focus()
  48.  
  49. label_pods = tk.Label(frame, text="")
  50. label_pods.grid(column=1, row=1)
  51.  
  52. # Кнопка для ввода числа
  53. button_enter = tk.Button(frame, text="Enter", command=otg)
  54. button_enter.grid(column=3, row=2)
  55.  
  56. # Кнопка "Играть снова"
  57. button_restart = tk.Button(frame, text="Играть снова", command=restart_game)
  58. button_restart.grid(column=1, row=3)
  59.  
  60. # Кнопка "Выход"
  61. button_exit = tk.Button(frame, text="Выход", command=window.quit)
  62. button_exit.grid(column=2, row=3)
  63.  
  64. window.mainloop()
  65.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement