Mundo em Python

Limite legal de álcool no sangue Em Portugal

from tkinter import *

def limpar():
nivel_álcool_entrada.delete(0, END)
resultado_texto.config(text="")
condutor_var.set(0) def app():
try:
nivel = float(nivel_álcool.get())
condutor = condutor_var.get() if condutor:
limite = 0.2
else:
limite = 0.5

if nivel < 0:
resultado_texto.config(text="O nível de álcool não pode ser negativo!")
elif nivel > 1.2:
resultado_texto.config(text="**CRIME RODOVIÁRIO**: TAS acima de 1,2 g/l!", fg="red")
elif nivel > limite:
resultado_texto.config(
text=f"Acima do limite permitido ({limite} g/l). Penalização aplicável.", fg="orange"
)
else:
resultado_texto.config(text="Dentro do limite permitido.", fg="green")
except ValueError:
resultado_texto.config(text="Valor digitado inválido!", fg="red") root = Tk()
root.geometry("700x400")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Limite legal de álcool no sangue")
titulo = Label(
text="Limite legal de álcool no sangue",
font=("Arial", 28, "bold"), bg="#103030", fg="#49e3e3"
)
titulo.place(relx=0.08, rely=0.05) texto_sub1 = Label(
text="Nível de álcool no sangue (g/l):",
font=("Arial", 18, "bold"), bg="#103030", fg="#49e3e3"
)
texto_sub1.place(relx=0.15, rely=0.32) nivel_álcool = StringVar()
nivel_álcool_entrada = Entry(
textvariable=nivel_álcool,
font=("Arial", 12, "bold"),
bg="white", fg="blue", justify="center"
)
nivel_álcool_entrada.place(relx=0.7, rely=0.33, relwidth=0.2)
nivel_álcool_entrada.focus() condutor_var = IntVar()
checkbox = Checkbutton(
root, text="Condutor profissional/recém-encartado",
variable=condutor_var, onvalue=1, offvalue=0,
font=("Arial", 12), bg="#103030", fg="#49e3e3"
)
checkbox.place(relx=0.15, rely=0.45) but1 = Button(
text="Calcular", bd=2, bg="#107db2", fg="white",
font=("verdana", 12, "bold"), command=app
)
but1.place(relx=0.1, rely=0.65, relwidth=0.25, relheight=0.1) but_limpar = Button(
text="Limpar", bd=2, bg="#107db2", fg="white",
font=("verdana", 12, "bold"), command=limpar
)
but_limpar.place(relx=0.4, rely=0.65, relwidth=0.25, relheight=0.1) but_sair = Button(
text="Sair", bd=2, bg="#107db2", fg="white",
font=("verdana", 12, "bold"), command=root.destroy
)
but_sair.place(relx=0.7, rely=0.65, relwidth=0.25, relheight=0.1)
resultado_texto = Label(
text="",
font=("Arial", 12, "bold"), bg="#cfe2f3", fg="black"
)
resultado_texto.place(relx=0.05, rely=0.8, relwidth=0.9, relheight=0.15) root.mainloop()
0