Mundo em Python

Tabela Periódica

Dito por si:








tabela_periodica = [
{"numero": 1, "simbolo": "H", "nome": "Hidrogénio", "peso": 1.008, "tipo": "Não metal"},
{"numero": 2, "simbolo": "He", "nome": "Hélio", "peso": 4.0026, "tipo": "Gás nobre"},
{"numero": 3, "simbolo": "Li", "nome": "Lítio", "peso": 6.94, "tipo": "Metal alcalino"},
{"numero": 4, "simbolo": "Be", "nome": "Berílio", "peso": 9.0122, "tipo": "Metal alcalino-terroso"},
{"numero": 5, "simbolo": "B", "nome": "Boro", "peso": 10.81, "tipo": "Semimetal"},
{"numero": 6, "simbolo": "C", "nome": "Carbono", "peso": 12.011, "tipo": "Não metal"},
{"numero": 7, "simbolo": "N", "nome": "Azoto", "peso": 14.007, "tipo": "Não metal"},
{"numero": 8, "simbolo": "O", "nome": "Oxigénio", "peso": 15.999, "tipo": "Não metal"},
{"numero": 9, "simbolo": "F", "nome": "Flúor", "peso": 18.998, "tipo": "Halogéneo"},
{"numero": 10, "simbolo": "Ne", "nome": "Neão", "peso": 20.180, "tipo": "Gás nobre"},
{"numero": 11, "simbolo": "Na", "nome": "Sódio", "peso": 22.990, "tipo": "Metal alcalino"},
{"numero": 12, "simbolo": "Mg", "nome": "Magnésio", "peso": 24.305, "tipo": "Metal alcalino-terroso"},
{"numero": 13, "simbolo": "Al", "nome": "Alumínio", "peso": 26.982, "tipo": "Metal"},
{"numero": 14, "simbolo": "Si", "nome": "Silício", "peso": 28.085, "tipo": "Semimetal"},
{"numero": 15, "simbolo": "P", "nome": "Fósforo", "peso": 30.974, "tipo": "Não metal"},
{"numero": 16, "simbolo": "S", "nome": "Enxofre", "peso": 32.06, "tipo": "Não metal"},
{"numero": 17, "simbolo": "Cl", "nome": "Cloro", "peso": 35.45, "tipo": "Halogéneo"},
{"numero": 18, "simbolo": "Ar", "nome": "Argão", "peso": 39.948, "tipo": "Gás nobre"},
{"numero": 19, "simbolo": "K", "nome": "Potássio", "peso": 39.098, "tipo": "Metal alcalino"},
{"numero": 20, "simbolo": "Ca", "nome": "Cálcio", "peso": 40.078, "tipo": "Metal alcalino-terroso"},
{"numero": 21, "simbolo": "Sc", "nome": "Escândio", "peso": 44.956, "tipo": "Metal de transição"},
{"numero": 22, "simbolo": "Ti", "nome": "Titânio", "peso": 47.867, "tipo": "Metal de transição"},
{"numero": 23, "simbolo": "V", "nome": "Vanádio", "peso": 50.942, "tipo": "Metal de transição"},
{"numero": 24, "simbolo": "Cr", "nome": "Cromo", "peso": 51.996, "tipo": "Metal de transição"},
{"numero": 25, "simbolo": "Mn", "nome": "Manganês", "peso": 54.938, "tipo": "Metal de transição"},
{"numero": 26, "simbolo": "Fe", "nome": "Ferro", "peso": 55.845, "tipo": "Metal de transição"},
{"numero": 27, "simbolo": "Co", "nome": "Cobalto", "peso": 58.933, "tipo": "Metal de transição"},
{"numero": 28, "simbolo": "Ni", "nome": "Níquel", "peso": 58.693, "tipo": "Metal de transição"},
{"numero": 29, "simbolo": "Cu", "nome": "Cobre", "peso": 63.546, "tipo": "Metal de transição"},
{"numero": 30, "simbolo": "Zn", "nome": "Zinco", "peso": 65.38, "tipo": "Metal de transição"},
{"numero": 31, "simbolo": "Ga", "nome": "Gálio", "peso": 69.723, "tipo": "Metal"},
{"numero": 32, "simbolo": "Ge", "nome": "Germânio", "peso": 72.630, "tipo": "Semimetal"},
{"numero": 33, "simbolo": "As", "nome": "Arsénio", "peso": 74.922, "tipo": "Semimetal"},
{"numero": 34, "simbolo": "Se", "nome": "Selénio", "peso": 78.971, "tipo": "Não metal"},
{"numero": 35, "simbolo": "Br", "nome": "Bromo", "peso": 79.904, "tipo": "Halogéneo"},
{"numero": 36, "simbolo": "Kr", "nome": "Criptão", "peso": 83.798, "tipo": "Gás nobre"},
{"numero": 37, "simbolo": "Rb", "nome": "Rubídio", "peso": 85.468, "tipo": "Metal alcalino"},
{"numero": 38, "simbolo": "Sr", "nome": "Estrôncio", "peso": 87.62, "tipo": "Metal alcalino-terroso"},
{"numero": 39, "simbolo": "Y", "nome": "Ítrio", "peso": 88.906, "tipo": "Metal de transição"},
{"numero": 40, "simbolo": "Zr", "nome": "Zircónio", "peso": 91.224, "tipo": "Metal de transição"},
{"numero": 41, "simbolo": "Nb", "nome": "Nióbio", "peso": 92.906, "tipo": "Metal de transição"},
{"numero": 42, "simbolo": "Mo", "nome": "Molibdénio", "peso": 95.95, "tipo": "Metal de transição"},
{"numero": 43, "simbolo": "Tc", "nome": "Tecnécio", "peso": 98, "tipo": "Metal de transição"},
{"numero": 44, "simbolo": "Ru", "nome": "Ruténio", "peso": 101.07, "tipo": "Metal de transição"},
{"numero": 45, "simbolo": "Rh", "nome": "Ródio", "peso": 102.91, "tipo": "Metal de transição"},
{"numero": 46, "simbolo": "Pd", "nome": "Paládio", "peso": 106.42, "tipo": "Metal de transição"},
{"numero": 47, "simbolo": "Ag", "nome": "Prata", "peso": 107.87, "tipo": "Metal de transição"},
{"numero": 48, "simbolo": "Cd", "nome": "Cádmio", "peso": 112.41, "tipo": "Metal de transição"},
{"numero": 49, "simbolo": "In", "nome": "Índio", "peso": 114.82, "tipo": "Metal"},
{"numero": 50, "simbolo": "Sn", "nome": "Estanho", "peso": 118.71, "tipo": "Metal"},
{"numero": 51, "simbolo": "Sb", "nome": "Antimónio", "peso": 121.76, "tipo": "Semimetal"},
{"numero": 52, "simbolo": "Te", "nome": "Telúrio", "peso": 127.60, "tipo": "Semimetal"},
{"numero": 53, "simbolo": "I", "nome": "Iodo", "peso": 126.90, "tipo": "Halogéneo"},
{"numero": 54, "simbolo": "Xe", "nome": "Xénon", "peso": 131.29, "tipo": "Gás nobre"},
{"numero": 55, "simbolo": "Cs", "nome": "Césio", "peso": 132.91, "tipo": "Metal alcalino"},
{"numero": 56, "simbolo": "Ba", "nome": "Bário", "peso": 137.33, "tipo": "Metal alcalino-terroso"},
{"numero": 57, "simbolo": "La", "nome": "Lantânio", "peso": 138.91, "tipo": "Lantanídeo"},
{"numero": 58, "simbolo": "Ce", "nome": "Cério", "peso": 140.12, "tipo": "Lantanídeo"},
{"numero": 59, "simbolo": "Pr", "nome": "Praseodímio", "peso": 140.91, "tipo": "Lantanídeo"},
{"numero": 60, "simbolo": "Nd", "nome": "Neodímio", "peso": 144.24, "tipo": "Lantanídeo"},
{"numero": 61, "simbolo": "Pm", "nome": "Promécio", "peso": 145, "tipo": "Lantanídeo"},
{"numero": 62, "simbolo": "Sm", "nome": "Samário", "peso": 150.36, "tipo": "Lantanídeo"},
{"numero": 63, "simbolo": "Eu", "nome": "Európio", "peso": 151.96, "tipo": "Lantanídeo"},
{"numero": 64, "simbolo": "Gd", "nome": "Gadolínio", "peso": 157.25, "tipo": "Lantanídeo"},
{"numero": 65, "simbolo": "Tb", "nome": "Térbio", "peso": 158.93, "tipo": "Lantanídeo"},
{"numero": 66, "simbolo": "Dy", "nome": "Disprósio", "peso": 162.50, "tipo": "Lantanídeo"},
{"numero": 67, "simbolo": "Ho", "nome": "Hólmio", "peso": 164.93, "tipo": "Lantanídeo"},
{"numero": 68, "simbolo": "Er", "nome": "Érbio", "peso": 167.26, "tipo": "Lantanídeo"},
{"numero": 69, "simbolo": "Tm", "nome": "Túlio", "peso": 168.93, "tipo": "Lantanídeo"},
{"numero": 70, "simbolo": "Yb", "nome": "Itérbio", "peso": 173.05, "tipo": "Lantanídeo"},
{"numero": 71, "simbolo": "Lu", "nome": "Lutécio", "peso": 174.97, "tipo": "Lantanídeo"},
{"numero": 72, "simbolo": "Hf", "nome": "Háfnio", "peso": 178.49, "tipo": "Metal de transição"},
{"numero": 73, "simbolo": "Ta", "nome": "Tântalo", "peso": 180.95, "tipo": "Metal de transição"},
{"numero": 74, "simbolo": "W", "nome": "Tungsténio", "peso": 183.84, "tipo": "Metal de transição"},
{"numero": 75, "simbolo": "Re", "nome": "Rénio", "peso": 186.21, "tipo": "Metal de transição"},
{"numero": 76, "simbolo": "Os", "nome": "Ósmio", "peso": 190.23, "tipo": "Metal de transição"},
{"numero": 77, "simbolo": "Ir", "nome": "Irídio", "peso": 192.22, "tipo": "Metal de transição"},
{"numero": 78, "simbolo": "Pt", "nome": "Platina", "peso": 195.08, "tipo": "Metal de transição"},
{"numero": 79, "simbolo": "Au", "nome": "Ouro", "peso": 196.97, "tipo": "Metal de transição"},
{"numero": 80, "simbolo": "Hg", "nome": "Mercúrio", "peso": 200.59, "tipo": "Metal de transição"},
{"numero": 81, "simbolo": "Tl", "nome": "Tálio", "peso": 204.38, "tipo": "Metal"},
{"numero": 82, "simbolo": "Pb", "nome": "Chumbo", "peso": 207.2, "tipo": "Metal"},
{"numero": 83, "simbolo": "Bi", "nome": "Bismuto", "peso": 208.98, "tipo": "Metal"},
{"numero": 84, "simbolo": "Po", "nome": "Polónio", "peso": 209, "tipo": "Metal"},
{"numero": 85, "simbolo": "At", "nome": "Astato", "peso": 210, "tipo": "Halogéneo"},
{"numero": 86, "simbolo": "Rn", "nome": "Radão", "peso": 222, "tipo": "Gás nobre"},
{"numero": 87, "simbolo": "Fr", "nome": "Frâncio", "peso": 223, "tipo": "Metal alcalino"},
{"numero": 88, "simbolo": "Ra", "nome": "Rádio", "peso": 226, "tipo": "Metal alcalino-terroso"},
{"numero": 89, "simbolo": "Ac", "nome": "Actínio", "peso": 227, "tipo": "Actinídeo"},
{"numero": 90, "simbolo": "Th", "nome": "Tório", "peso": 232.04, "tipo": "Actinídeo"},
{"numero": 91, "simbolo": "Pa", "nome": "Protactínio", "peso": 231.04, "tipo": "Actinídeo"},
{"numero": 92, "simbolo": "U", "nome": "Urânio", "peso": 238.03, "tipo": "Actinídeo"},
{"numero": 93, "simbolo": "Np", "nome": "Neptúnio", "peso": 237, "tipo": "Actinídeo"},
{"numero": 94, "simbolo": "Pu", "nome": "Plutónio", "peso": 244, "tipo": "Actinídeo"},
{"numero": 95, "simbolo": "Am", "nome": "Amerício", "peso": 243, "tipo": "Actinídeo"},
{"numero": 96, "simbolo": "Cm", "nome": "Cúrio", "peso": 247, "tipo": "Actinídeo"},
{"numero": 97, "simbolo": "Bk", "nome": "Berquélio", "peso": 247, "tipo": "Actinídeo"},
{"numero": 98, "simbolo": "Cf", "nome": "Califórnio", "peso": 251, "tipo": "Actinídeo"},
{"numero": 99, "simbolo": "Es", "nome": "Einsténio", "peso": 252, "tipo": "Actinídeo"},
{"numero": 100,"simbolo": "Fm", "nome": "Férmio", "peso": 257, "tipo": "Actinídeo"},
{"numero": 101,"simbolo": "Md", "nome": "Mendelévio", "peso": 258, "tipo": "Actinídeo"},
{"numero": 102,"simbolo": "No", "nome": "Nobélio", "peso": 259, "tipo": "Actinídeo"},
{"numero": 103,"simbolo": "Lr", "nome": "Laurêncio", "peso": 262, "tipo": "Actinídeo"},
{"numero": 104,"simbolo": "Rf", "nome": "Rutherfordio", "peso": 267, "tipo": "Metal de transição"},
{"numero": 105,"simbolo": "Db", "nome": "Dúbnio", "peso": 270, "tipo": "Metal de transição"},
{"numero": 106,"simbolo": "Sg", "nome": "Seabórgio", "peso": 271, "tipo": "Metal de transição"},
{"numero": 107,"simbolo": "Bh", "nome": "Bóhrio", "peso": 270, "tipo": "Metal de transição"},
{"numero": 108,"simbolo": "Hs", "nome": "Hássio", "peso": 277, "tipo": "Metal de transição"},
{"numero": 109,"simbolo": "Mt", "nome": "Meitnério", "peso": 276, "tipo": "Metal de transição"},
{"numero": 110,"simbolo": "Ds", "nome": "Darmstádtio", "peso": 281, "tipo": "Metal de transição"},
{"numero": 111,"simbolo": "Rg", "nome": "Roentgénio", "peso": 282, "tipo": "Metal de transição"},
{"numero": 112,"simbolo": "Cn", "nome": "Copernício", "peso": 285, "tipo": "Metal de transição"},
{"numero": 113,"simbolo": "Nh", "nome": "Nihónio", "peso": 286, "tipo": "Metal"},
{"numero": 114,"simbolo": "Fl", "nome": "Fleróvio", "peso": 289, "tipo": "Metal"},
{"numero": 115,"simbolo": "Mc", "nome": "Moscóvio", "peso": 288, "tipo": "Metal"},
{"numero": 116,"simbolo": "Lv", "nome": "Livermório", "peso": 293, "tipo": "Metal"},
{"numero": 117,"simbolo": "Ts", "nome": "Tenessino", "peso": 294, "tipo": "Halogéneo"},
{"numero": 118,"simbolo": "Og", "nome": "Oganessão", "peso": 294, "tipo": "Gás nobre"},
]



from tkinter import *


root = Tk()
root.geometry("500x400")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Tabela Periódica")


def app():
elemento_escolhido = var.get()
mensagem = ""
for elem in tabela_periodica:
if elem["nome"] == elemento_escolhido:
mensagem += (f"Número do elemento: {elem['numero']:<3} \n "
f"Símbolo: {elem['simbolo']:<3}\n "
f"Nome: {elem['nome']:<15}\n "
f"Peso: {elem['peso']:<7}\n "
f"Tipo: {elem['tipo']}\n")
resultado_texto.config(text=mensagem)
def limpar():
resultado_texto.config(text="")
var = StringVar()
Label(text="Tabela Periódica", font=("Arial", 28, "bold"), bg="#103030", fg="#49e3e3").place(relx=0.2, rely=0.05)
Label(text="Nome :", font=("Arial", 18, "bold"), bg="#103030", fg="#49e3e3").place(relx=0.2, rely=0.25)
nomes_elementos = sorted([elem["nome"] for elem in tabela_periodica])
dropdown = OptionMenu(root, var, *nomes_elementos)
var.set(nomes_elementos[0])
dropdown.place(relx=0.45, rely=0.26, relwidth=0.5)
dropdown.config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", 17, "bold"))
dropdown["menu"].config(background='#09A3BA', foreground="#FFFFFF", font=("Arial", 15, "bold"))



Button(text="Mostrar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=app).place(relx=0.1, rely=0.45, relwidth=0.25, relheight=0.1)


Button(text="Limpar", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=limpar).place(relx=0.4, rely=0.45, relwidth=0.25, relheight=0.1)


Button(text="Sair", bd=2, bg='#107db2', fg='white',
font=('verdana', 12, 'bold'), command=root.destroy).place(relx=0.7, rely=0.45, relwidth=0.25, relheight=0.1)


resultado_texto = Label(text="", font=("Arial", 12, "bold"), bg="#cfe2f3")
resultado_texto.place(relx=0.05, rely=0.57, relwidth=0.9, relheight=0.4)


root.mainloop()








0