Mundo em Python

Pilotos Fórmula 1

from tkinter import *

pilotos_f1_2025 = {
"Alexander Albon": {"equipa": "Williams", "nacionalidade": "Tailândia", "gp_disputados": 118, "titulos": 0},
"Pierre Gasly": {"equipa": "Alpine", "nacionalidade": "França", "gp_disputados": 167, "titulos": 0},
"Kimi Antonelli": {"equipa": "Mercedes", "nacionalidade": "Itália", "gp_disputados": 12, "titulos": 0},
"Lando Norris": {"equipa": "McLaren", "nacionalidade": "Reino Unido", "gp_disputados": 142, "titulos": 0},
"Charles Leclerc": {"equipa": "Ferrari", "nacionalidade": "Mónaco", "gp_disputados": 160, "titulos": 0},
"Lewis Hamilton": {"equipa": "Ferrari", "nacionalidade": "Reino Unido", "gp_disputados": 370, "titulos": 7},
"Fernando Alonso": {"equipa": "Aston Martin", "nacionalidade": "Espanha", "gp_disputados": 350, "titulos": 2},
"Oliver Bearman": {"equipa": "Haas", "nacionalidade": "Reino Unido", "gp_disputados": 5, "titulos": 0},
"Gabriel Bortoleto": {"equipa": "Sauber", "nacionalidade": "Brasil", "gp_disputados": 0, "titulos": 0},
"Franco Colapinto": {"equipa": "Alpine", "nacionalidade": "Argentina", "gp_disputados": 0, "titulos": 0},
"Isack Hadjar": {"equipa": "Racing Bulls", "nacionalidade": "França", "gp_disputados": 0, "titulos": 0},
"Nico Hülkenberg": {"equipa": "Sauber", "nacionalidade": "Alemanha", "gp_disputados": 200, "titulos": 0},
"Liam Lawson": {"equipa": "Racing Bulls", "nacionalidade": "Nova Zelândia", "gp_disputados": 12, "titulos": 0},
"Esteban Ocon": {"equipa": "Haas", "nacionalidade": "França", "gp_disputados": 100, "titulos": 0},
"Oscar Piastri": {"equipa": "McLaren", "nacionalidade": "Austrália", "gp_disputados": 30, "titulos": 0},
"George Russell": {"equipa": "Mercedes", "nacionalidade": "Reino Unido", "gp_disputados": 70, "titulos": 0},
"Carlos Sainz": {"equipa": "Williams", "nacionalidade": "Espanha", "gp_disputados": 150, "titulos": 0},
"Lance Stroll": {"equipa": "Aston Martin", "nacionalidade": "Canadá", "gp_disputados": 100, "titulos": 0},
"Yuki Tsunoda": {"equipa": "Racing Bulls", "nacionalidade": "Japão", "gp_disputados": 50, "titulos": 0},
"Max Verstappen": {"equipa": "Racing Bulls", "nacionalidade": "Países Baixos", "gp_disputados": 150, "titulos": 4}
} root = Tk()
root.geometry("700x350")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Fórmula 1") titulo = Label(text="Fórmula 1", font=("Arial", 28, "bold"), bg="#103030", fg="#49e3e3")
titulo.place(relx=0.18, rely=0.05) texto_sub1 = Label(text="Escolha o Piloto:", font=("Arial", 18, "bold"), bg="#103030", fg="#49e3e3")
texto_sub1.place(relx=0.2, rely=0.2) var = StringVar()
primeiro = list(pilotos_f1_2025.keys())[0]
var.set(primeiro) def mostrar_titulos(*args):
piloto = var.get()
info = pilotos_f1_2025[piloto]
texto = (
f"Piloto: {piloto}\n"
f"Equipa: {info['equipa']}\n"
f"Nacionalidade: {info['nacionalidade']}\n"
f"GPs disputados: {info['gp_disputados']}\n"
f"Títulos: {info['titulos']}"
)
resultado.config(text=texto) dropdown = OptionMenu(root, var, *pilotos_f1_2025.keys())
dropdown.place(relx=0.2, rely=0.3, relwidth=0.45)
dropdown.config(background="#09A3BA", foreground="#FFFFFF", font=("Arial", 15, "bold"))
dropdown["menu"].config(background="#09A3BA", foreground="#FFFFFF", font=("Arial", 15, "bold")) resultado = Label(root, text="", font=("Arial", 14), bg="#103030", fg="#FFFFFF", justify=LEFT)
resultado.place(relx=0.2, rely=0.45) var.trace("w", mostrar_titulos)
mostrar_titulos()
root.mainloop()
0