Как поменять цвет чисел в Label с помощью условия?

Хочу чтобы числа от 1 до 50 были зелёные, а от 51 до 100 красные.
Не могу понять как это сделать?

from tkinter import *
import random

root = Tk()
root.title('Генератор чисел')
def btn_click():
    sgint = random.randint(0, 100)
    info['text'] = sgint

root.title('Название программы')
root.wm_attributes('-alpha', 0.7)
root.geometry('400x500')

canvas = Canvas(root, height=400, width=500)
canvas.pack()

frame = Frame(root, bg='white')
frame.place(relheight=1, relwidth=1)

if 0 >= sgint <= 50:
    info = Label(frame, bg='#ffffff', fg='green',font='Arial 100')
else:
    info = Label(frame, bg='#ffffff', fg='red',font='Arial 100')
info.pack()

btn = Button(frame, text='Сгенерировать', bg='grey', padx=20, pady=20, command=btn_click)
btn.pack()

root.mainloop()

Ответы (1 шт):

Автор решения: S. Nick

Попробуйте так:

import random
from tkinter import *


root = Tk()
root.title('Генератор чисел')

sgint = 0                                                          # +++

def btn_click():
    sgint = random.randint(0, 100)
    info['text'] = sgint

    if sgint <= 50:                                                # +++ sgint <= 50
        info['fg'] = 'green'                                       # +++
    else:                                                          # +++
        info['fg'] = 'red'                                         # +++ 

root.title('Название программы')
root.wm_attributes('-alpha', 0.7)
root.geometry('400x500')

canvas = Canvas(root, height=400, width=500)
canvas.pack()

frame = Frame(root, bg='white')
frame.place(relheight=1, relwidth=1)

# ???
# if 0 >= sgint <= 50:
#     info = Label(frame, bg='#ffffff', fg='green',font='Arial 100')
# else:

info = Label(frame, bg='#ffffff', fg='blue',font='Arial 100')
info.pack()

btn = Button(frame, text='Сгенерировать', bg='grey', 
    padx=20, pady=20, command=btn_click)
btn.pack()

root.mainloop()

введите сюда описание изображения

введите сюда описание изображения

→ Ссылка