Я написал код на Python с помощью чат-бота GPT. Суть кода заключается в сравнении чисел для статистики. В первом меню вводится первое число, во втором меню - второе число, и я сохраняю результат, нажав на кнопку. Если первое число больше второго, цвет будет зеленым. Если второе число больше первого, цвет будет красным. Если числа равны, цвет будет желтым. Эта часть кода уже сделана, так что при открытии кода все будет понятно.

Однако, осталось реализовать статистику. В данный момент, когда я нажимаю кнопку сохранить, сохраняется только один цвет. Но мне нужно, чтобы было 500-800 квадратиков слева с сохранением цвета и соответствующая статистика справа. Это несложная задача, но трудно объяснить. Пожалуйста, исправьте ошибки в коде и помогите реализовать статистику.не могу прикрипить файл в таком формате не поддерживается так что вот код:

import tkinter as tk

from datetime import datetime

def update_color1(*args):

num1 = get_number(entry1.get())

num2 = get_number(entry2.get())

if num1 is not None and num2 is not None:

if num1 > num2:

color1 = "green"

elif num2 > num1:

color1 = "red"

else:

color1 = "yellow"

else:

color1 = "white"

label_color1.config(bg=color1)

def update_color2(*args):

num3 = get_number(entry3.get())

num4 = get_number(entry4.get())

if num3 is not None and num4 is not None:

if num3 > num4:

color2 = "green"

elif num4 > num3:

color2 = "red"

else:

color2 = "yellow"

else:

color2 = "white"

label_color2.config(bg=color2)

def update_time():

current_time = datetime.now().strftime("%H:%M:%S")

time_label.config(text=current_time, font=("Courier", 25, "bold"))

time_label.after(1000, update_time)

def paste_numbers(event):

clipboard_data = root.clipboard_get().strip()

focused_entry = root.focus_get()

if focused_entry == entry1:

num = get_number(clipboard_data)

if num is not None:

entry1.delete(0, tk.END)

entry1.insert(0, format_number(num))

elif focused_entry == entry2:

num = get_number(clipboard_data)

if num is not None:

entry2.delete(0, tk.END)

entry2.insert(0, format_number(num))

elif focused_entry == entry3:

num = get_number(clipboard_data)

if num is not None:

entry3.delete(0, tk.END)

entry3.insert(0, format_number(num))

elif focused_entry == entry4:

num = get_number(clipboard_data)

if num is not None:

entry4.delete(0, tk.END)

entry4.insert(0, format_number(num))

def get_number(value):

try:

return float(value)

except ValueError:

return None

def format_number(num):

if num.is_integer():

return str(int(num))

else:

return str(num)

def save_color1():

color = label_color1.cget("bg")

stat_label1.config(bg=color)

def save_color2():

color = label_color2.cget("bg")

stat_label2.config(bg=color)

root = tk.Tk()

root.title("Окно с числами и цветом")

root.geometry("500x400")

frame1 = tk.Frame(root)

frame1.pack(side=tk.LEFT, padx=20, pady=20, anchor="n")

frame2 = tk.Frame(root)

frame2.pack(side=tk.LEFT, padx=20, pady=20, anchor="n")

label1 = tk.Label(frame1, text="Первое число:")

label1.pack()

entry1 = tk.Entry(frame1)

entry1.pack()

label2 = tk.Label(frame1, text="Второе число:")

label2.pack()

entry2 = tk.Entry(frame1)

entry2.pack()

button_save_color1 = tk.Button(frame1, text="Сохранить цвет", command=save_color1)

button_save_color1.pack()

label3 = tk.Label(frame2, text="Третье число:")

label3.pack()

entry3 = tk.Entry(frame2)

entry3.pack()

label4 = tk.Label(frame2, text="Четвертое число:")

label4.pack()

entry4 = tk.Entry(frame2)

entry4.pack()

button_save_color2 = tk.Button(frame2, text="Сохранить цвет", command=save_color2)

button_save_color2.pack()

color_frame = tk.Frame(root)

color_frame.pack(side=tk.BOTTOM, pady=20)

label_color1 = tk.Label(color_frame, bg="white", width=10, height=5)

label_color1.pack(side=tk.LEFT, padx=10)

label_color2 = tk.Label(color_frame, bg="white", width=10, height=5)

label_color2.pack(side=tk.LEFT, padx=10)

stat_frame = tk.Frame(root)

stat_frame.pack(side=tk.BOTTOM, pady=10)

stat_label1 = tk.Label(stat_frame, bg="white", width=10, height=5)

stat_label1.pack(side=tk.LEFT, padx=10)

stat_label2 = tk.Label(stat_frame, bg="white", width=10, height=5)

stat_label2.pack(side=tk.LEFT, padx=10)

time_label = tk.Label(root, text="", font=("Courier", 25, "bold"))

time_label.pack(side=tk.TOP, pady=20)

entry1.bind("", update_color1)

entry2.bind("", update_color1)

entry3.bind("", update_color2)

entry4.bind("", update_color2)

update_time()

root.bind("", paste_numbers)

root.mainloop()

год назад
PrograMama
Дмитро 
20 лет
2 года в сервисе
Был
год назад

Заявки фрилансеров

Юрий
 
24 года
2 года в сервисе
Был
8 месяцев назад
2 года назад
Евгений
 
20 лет
2 года в сервисе
Был
2 года назад
2 года назад
Даня
 
23 года
2 года в сервисе
Был
2 года назад
2 года назад
Владимир
 
25 лет
7 лет в сервисе
Был
2 года назад
2 года назад
  • Похожие заказы

  • Необходимы изменения в прикладном ПО бота для добавления функции поиска комплектации по номеру. Ожидается возможность выбора типа детали и указания количества операций. Требуется проработка логики поиска и интерфейса для пользователей.

    Прикладное ПО1 исполнитель
    Завершен
    2 года назад
  • Ищется Python программист для разработки прикладного ПО. Необходим опыт работы с фреймворком Django, базой данных PostgreSQL и интеграцией API. Ожидается выполнение качественной работы с учетом всех требований.

    Закрыт
    2 года назад
  • $201

    Требуется парсинг всех карточек компаний с сайта clutch.co и экспорт данных в Google Spreadsheet с разбивкой по ячейкам. Можно использовать существующие решения, такие как проект на GitHub или Apify. Оплата возможна по факту выполнения или через безопасную сделку.

    Закрыт
    2 года назад
  • Необходимо реализовать автоматическую смену даты в шаблоне документа Word. При вводе даты в одном месте, в другом месте должна вставляться следующая дата. Например, при вводе 01.01.23, в другом месте автоматически вставляется 02.01.23.

    Закрыт
    2 года назад
  • Требуется разработать приложение манометра со звуковой сигнализацией на Delphi 7 для Windows 7/8/10/11. Программа должна управлять давлением, динамически изменять звук и отображение манометра. Необходимо обеспечить загрузку графики и звуков из файлов, а также сохранять данные в INI. Программа должна работать на 64-разрядной ОС и поддерживать масштабирование.

    Закрыт
    2 года назад
  • $30

    Необходимо разработать парсер данных, который будет собирать информацию и выгружать результаты в Telegram-канал или бота. Укажите технологии и подходы, которые планируете использовать для реализации проекта.

    Закрыт
    2 года назад
  • Створити програму на C# для організації сенсорних вузлів у єдину топологічну структуру мережі з максимальною швидкістю передачі даних. Реалізувати графічний інтерфейс для відображення графіків залежності швидкості передачі від кількості вузлів та розміру покриття. Надати блок-схему алгоритму та інструкцію для користувача.

    Прикладное ПОнет заявок
    Закрыт
    2 года назад
  • Требуется создать приложение для ОС Windows с возможностью авторизации по логину и паролю. Реализовать функцию drag and drop для расстановки событий в расписании и изменения количества срок и столбцов. Приложение должно отображать события в режиме реального времени.

    Закрыт
    2 года назад
  • Необходимо выполнить выборку данных с сайта 'Статистика' по объемам и стоимости генерации энергии, а также валовому доходу сетевых платформ и банковской системы по ведущим странам мира. Анализ должен охватывать не менее 90% мирового объема и ВВП. Программно проанализировать характер взаимосвязи между данными.

    Закрыт
    2 года назад