Mundo em Python

Corridas de F1 para 2026

from tkinter import *

root = Tk()
root.geometry("700x400")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Corridas de F1 para 2026") titulo = Label(
text="Corridas de F1 para 2026",
font=("Arial", 28, "bold"),
bg="#103030",
fg="#49e3e3"
)
titulo.place(relx=0.18, rely=0.05) texto_sub1 = Label(
text="Escolha uma opção:",
font=("Arial", 18, "bold"),
bg="#103030",
fg="#49e3e3"
)
texto_sub1.place(relx=0.05, rely=0.25) # Variável do dropdown
var = StringVar() # 📘 Dicionário com todas as corridas
corridas = {
"Australian Grand Prix": {
"data": "6–8 Março",
"pais": "Austrália",
"cidade": "Melbourne",
"circuito": "Albert Park"
},
"Chinese Grand Prix": {
"data": "13–15 Março",
"pais": "China",
"cidade": "Xangai",
"circuito": "Shanghai International Circuit"
},
"Japanese Grand Prix": {
"data": "27–29 Março",
"pais": "Japão",
"cidade": "Suzuka",
"circuito": "Suzuka Circuit"
},
"Bahrain Grand Prix": {
"data": "10–12 Abril",
"pais": "Bahrein",
"cidade": "Sakhir",
"circuito": "Bahrain International Circuit"
},
"Saudi Arabian Grand Prix": {
"data": "17–19 Abril",
"pais": "Arábia Saudita",
"cidade": "Jeddah",
"circuito": "Jeddah Corniche Circuit"
},
"Miami Grand Prix": {
"data": "1–3 Maio",
"pais": "EUA",
"cidade": "Miami",
"circuito": "Miami International Autodrome"
},
"Canadian Grand Prix": {
"data": "22–24 Maio",
"pais": "Canadá",
"cidade": "Montreal",
"circuito": "Circuit Gilles Villeneuve"
},
"Monaco Grand Prix": {
"data": "5–7 Junho",
"pais": "Mónaco",
"cidade": "Monte Carlo",
"circuito": "Circuit de Monaco"
},
"Barcelona-Catalunya GP": {
"data": "12–14 Junho",
"pais": "Espanha",
"cidade": "Montmeló",
"circuito": "Circuit de Barcelona-Catalunya"
},
"Austrian Grand Prix": {
"data": "26–28 Junho",
"pais": "Áustria",
"cidade": "Spielberg",
"circuito": "Red Bull Ring"
},
"British Grand Prix": {
"data": "3–5 Julho",
"pais": "Reino Unido",
"cidade": "Silverstone",
"circuito": "Silverstone Circuit"
},
"Belgian Grand Prix": {
"data": "17–19 Julho",
"pais": "Bélgica",
"cidade": "Stavelot",
"circuito": "Spa-Francorchamps"
},
"Hungarian Grand Prix": {
"data": "24–26 Julho",
"pais": "Hungria",
"cidade": "Mogyoród",
"circuito": "Hungaroring"
},
"Dutch Grand Prix": {
"data": "21–23 Agosto",
"pais": "Países Baixos",
"cidade": "Zandvoort",
"circuito": "Circuit Zandvoort"
},
"Italian Grand Prix": {
"data": "4–6 Setembro",
"pais": "Itália",
"cidade": "Monza",
"circuito": "Autodromo Nazionale di Monza"
},
"Gran Premio de España": {
"data": "11–13 Setembro",
"pais": "Espanha",
"cidade": "Madrid",
"circuito": "Circuito Urbano de Madrid"
},
"Azerbaijan Grand Prix": {
"data": "24–26 Setembro",
"pais": "Azerbaijão",
"cidade": "Baku",
"circuito": "Baku City Circuit"
},
"Singapore Grand Prix": {
"data": "9–11 Outubro",
"pais": "Singapura",
"cidade": "Singapura",
"circuito": "Marina Bay Street Circuit"
},
"United States GP": {
"data": "23–25 Outubro",
"pais": "EUA",
"cidade": "Austin",
"circuito": "Circuit of the Americas"
},
"Gran Premio de la Ciudad de México": {
"data": "30 Out – 1 Nov",
"pais": "México",
"cidade": "Cidade do México",
"circuito": "Autódromo Hermanos Rodríguez"
},
"Grande Prêmio de São Paulo": {
"data": "6–8 Novembro",
"pais": "Brasil",
"cidade": "São Paulo",
"circuito": "Autódromo José Carlos Pace"
},
"Las Vegas Grand Prix": {
"data": "19–21 Novembro",
"pais": "EUA",
"cidade": "Las Vegas",
"circuito": "Las Vegas Street Circuit"
},
"Qatar Grand Prix": {
"data": "27–29 Novembro",
"pais": "Qatar",
"cidade": "Lusail",
"circuito": "Lusail International Circuit"
},
"Abu Dhabi Grand Prix": {
"data": "4–6 Dezembro",
"pais": "Emirados Árabes Unidos",
"cidade": "Abu Dhabi",
"circuito": "Yas Marina Circuit"
}
} def mostrar_corrida(*args):
corrida = var.get()
info = corridas[corrida] mensagem = (
f"Data: {info['data']}\n"
f"País: {info['pais']}\n"
f"Cidade: {info['cidade']}\n"
f"Circuito: {info['circuito']}"
) resultado_texto.config(text=mensagem) # Dropdown
dropdown = OptionMenu(root, var, *corridas.keys())
var.set(list(corridas.keys())[0])
dropdown.place(relx=0.13, rely=0.34, relwidth=0.8)
dropdown.config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", 20, "bold"))
dropdown["menu"].config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", 14)) # Detectar mudança
var.trace_add("write", mostrar_corrida) resultado_texto = Label(
text="",
font=("Arial", 14, "bold"),
bg="#cfe2f3",
justify=LEFT
)
resultado_texto.place(relx=0.05, rely=0.5, relwidth=0.9, relheight=0.4) mostrar_corrida() root.mainloop()
0