Mundo em Python

Calcular a Moda, Média e Mediana (Usando Tkinter)

from tkinter import *
lista = [] def apply():
media = sum(lista) / len(lista)
mediaarendado = round(media, 3)
media_texto = f'A média é de {mediaarendado}'
frequency = {}
for i in lista:
frequency.setdefault(i, 0)
frequency[i] += 1
frequent = max(frequency.values())
for i, j in frequency.items():
if j == frequent:
moda = i
moda_texto = f'A Moda é de {moda}'
lista.sort()
if len(lista) % 2 == 0:
m1 = lista[len(lista) // 2]
m2 = lista[len(lista) // 2 - 1]
mediana = (m1 + m2) / 2
else:
mediana = lista[len(lista) // 2] texto = f'A mediana é de {mediana}.\nA moda é de {moda}.\n' \
f'A média é de {mediaarendado}.'
return resultado.set(texto)
def addtolist():
temp = numero_adiciona.get()
lista.append(temp)
texto.config(text=f'{lista}')
adiocionar_lista_entrada.delete(0, END) def clear():
adiocionar_lista_entrada.delete(0, END)
texto.config(text='')
lista.clear()
root = Tk()
root.geometry('400x300')
root.config(bg='#2E7175')
root.resizable(False,False)
root.title("Média, Moda, Media Usando Tkinter")
numero_adiciona = DoubleVar()
adiocionar_lista = Label(text="Número",font=("Arial","12"))
adiocionar_lista.place(relx=0.15,rely=0.05) adiocionar_lista_entrada =Entry(textvariable=numero_adiciona)
adiocionar_lista_entrada.place(relx=0.4,rely=0.05)
# ,command=addtolist
add_btn = Button(text="Adicionar",command=addtolist)
add_btn.place(relx=0.75,rely=0.05) texto = Label(textvariable=lista,bg='#2E7175')
texto.place(relx=0.3,rely=0.25)
resultado = StringVar()
resultado_lb = Label(textvariable=resultado,
font=("Helvetica", '12','bold'),fg="white",bg='#2E7175')
resultado_lb.place(relx=0.4, rely=0.3)
#
resultado_btn = Button(text="Resultado",command=apply)
resultado_btn.place(relx=0.15, rely=0.7,relwidth=0.25) clear_btn = Button(text="Limpar", command=clear)
clear_btn.place(relx=0.4, rely=0.7,relwidth=0.25) exit_btn = Button(text="Exit", command=lambda:root.destroy())
exit_btn.place(relx=0.65, rely=0.7,relwidth=0.25)
root.mainloop()
0