Tableau périodique

FIXME : importation de la librairie tkinter à unifier + codes à améliorer

tableau_periodique.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Programme sur le tableau périodique
# MJ, Ba2 chimie 2010-2011
 
from tkinter import *
from element_liste import * #sert à importer la liste présente dans l'autre fichier
 
#création de la commande générale du boutton
def elem(x):
    element=Tk()
    element.title("Proprietes")
    listbox=Listbox(element,height=10,width=40,fg="#070942")
    listbox.pack() #sert à ajuster la fenêtre
    listbox.insert(END)
    for item in tableau[x]:
        listbox.insert(END,item)
    quitter = Button(element,text='Quitter',command=element.destroy)
    quitter.pack(side=BOTTOM)
    mainloop()
 
fen1=Tk()
fen1.title("Tableau periodique")
 
#création de la légende (site www.jchr.be/python/tkinter.htm)
import tkinter
sysdemenu=tkinter.Menu(fen1)
def legende():
    legend1= Tk()
    legend1.title("Légende")
    frame= Frame(legend1, height=200, width= 300) #frame ouvre une nouvelle fenêtre dans laquelle on peut insérer plusieurs widgets (ici des messages)
    autre = Message(legend1, text="Autres", width=300, font="Arial 15", bg="white") #font = taille et police
    autre.pack()
    metauxtransition= Message(legend1, text="Metaux de transition", width=300, font="Arial 15", bg="#FFCCCC")
    metauxtransition.pack()
    gazrare = Message(legend1, text="Gaz rares", width=300, font="Arial 15", bg="#00CCFF")
    gazrare.pack()
    nonmetaux= Message(legend1, text="Non metaux", width=300, font="Arial 15", bg="#00FF66")
    nonmetaux.pack()
    metauxalcalins= Message(legend1, text="Metaux alcalins", width=300, font="Arial 15", bg="#FF9900")
    metauxalcalins.pack()
    metauxalcalinoterreux= Message(legend1, text="Metaux alcalino terreux", width=300, font="Arial 15", bg="#FFFF33")
    metauxalcalinoterreux.pack()
    lanthanides= Message(legend1, text="Lanthanides", width=300, font="Arial 15", bg="#CCCC66")
    lanthanides.pack()
    actinides= Message(legend1, text="Actinides", width=300, font="Arial 15", bg="#FF3300")
    actinides.pack()
    metaux= Message(legend1, text="Metaux", width=300, font="Arial 15", bg="#9999FF")
    metaux.pack()
 
    frame.pack()
    mainloop() 
 
Menu=tkinter.Menu(sysdemenu)
sysdemenu.add_cascade(label="Menu", menu=Menu)
Menu.add_command(label="Legende", command = legende)
Menu.add_command(label="Quitter", command=fen1.quit)
 
#création des boutons du tableau
bou_list=[]
for item in tableau[1:]:
   bou=Button(fen1,text=item[1],command=lambda x=item[2]:elem(x),height=2,width=3,bg=item[6])
   bou.grid(row=item[4],column=item[5]) #grid est utilisé pour classer les bouttons par rangée et colonne
   bou_list.append(bou)
 
fen1.config(menu=sysdemenu)
 
#création de la listbox au sommet (source:http://www.tkdocs.com/tutorial/grid.html)   
centre=Listbox(fen1)
centre.grid(row=0,column=3,rowspan= 1,columnspan=8)
centre.insert(END)
for item in ["Nom:","Symbole:", "Numero atomique:","Masse molaire:","Ligne:","Colonne:","Couleur:"]:
    centre.insert(END,item)
mainloop()
 
fen1.destroy()   
fen1.mainloop()

Nécessite ce fichier de données :

element_liste.py
tableau=[
        ["Nom","symbole","Numero atomique","Masse atomique", "ligne","colonne","couleur"],
        ["Hydrogene","H",1, 1.00794,1,0,"white"],
        ["Helium", "He",2, 4.0026,1,17,"#00CCFF"],
        ["Lithium", "Li", 3, 6.9412,2,0,"#FF9900"],
        ["Beryllium","Be",4,9.012182,2,1,"#FFFF33"],
        ["Bore","B",5,10.811,2,12,"#00FF66"],
        ["Carbone","C",6,12.0107,2,13,"#00FF66"],
        ["Azote","N",7,14.00674,2,14,"#00FF66"],
        ["Oxygene","O",8,15.9994,2,15,"#00FF66"],
        ["Fluor","F",9,18.9984,2,16,"#00FF66"],
        ["Neon","Ne",10,20.1797,2,17,"#00CCFF"],
        ["Sodium","Na",11,22.9897,3,0,"#FF9900"],
        ["Magnesium","Mg",12,24.3050,3,1,"#FFFF33"],
        ["Aluminium","Al",13,26.9815,3,12,"#9999FF"],
        ["Silicium","Si",14,28.0855,3,13,"#00FF66"],
        ["Phosphore","P",15,30.973761,3,14,"#00FF66"],
        ["Soufre","S",16,32.066,3,15,"#00FF66"],
        ["Chlore","Cl",17,35.453,3,16,"#00FF66"],
        ["Argon","Ar",18,39.948,3,17,"#00CCFF"],
        ["Potassium","K",19,39.0963,4,0,"#FF9900"],
        ["Calcium","Ca",20,40.078,4,1,"#FFFF33"],
        ["Scandium","Sc",21,44.9559,4,2,"#FFCCCC"],
        ["Titane","Ti",22,47.867,4,3,"#FFCCCC"],
        ["Vanadium","V",23,50.9415,4,4,"#FFCCCC"],
        ["Chrome","Cr",24,51.9961,4,5,"#FFCCCC"],
        ["Manganese","Mn",25,54.9380,4,6,"#FFCCCC"],
        ["Fer","Fe",26,55.8457,4,7,"#FFCCCC"],
        ["Cobalt","Co",27,58.9332,4,8,"#FFCCCC"],
        ["Nickel","Ni",28,58.6934,4,9,"#FFCCCC"],
        ["Cuivre","Cu",29,63.546,4,10,"#FFCCCC"],
        ["Zinc","Zn",30,65.409,4,11,"#FFCCCC"],
        ["Gallium","Ga",31,69.723,4,12,"#9999FF"],
        ["Germanium","Ge",32,72.64,4,13,"#9999FF"],
        ["Arsenic","As",33,74.9216,4,14,"#00FF66"],
        ["Selenium","Se",34,78.96,4,15,"#00FF66"],
        ["Brome","Br",35,79.904,4,16,"#00FF66"],
        ["Krypton","Kr",36,83.798,4,17,"#00CCFF"],
        ["Rubidium","Rb",37,85.4678,5,0,"#FF9900"],
        ["Strontium","Sr",38,87.62,5,1,"#FFFF33"],
        ["Yttrium","Y",39,88.9059,5,2,"#FFCCCC"],
        ["Zirconium","Zr",40,91.224,5,3,"#FFCCCC"],
        ["Niobium","Nb",41,92.9063,5,4,"#FFCCCC"],
        ["Molybdene","Mo",42,95.94,5,5,"#FFCCCC"],
        ["Technetium","Tc",43,98,5,6,"#FFCCCC"],
        ["Ruthenium","Ru",44,101.07,5,7,"#FFCCCC"],
        ["Rhodium","Rh",45,102.9055,5,8,"#FFCCCC"],
        ["Palladium","Pd",46,106.42,5,9,"#FFCCCC"],
        ["Argent","Ag",47,107.8682,5,10,"#FFCCCC"],
        ["Cadmium","Cd",48,112.411,5,11,"#FFCCCC"],
        ["Indium","In",49,114.818,5,12,"#9999FF"],
        ["Etain","Sn",50,118.710,5,13,"#9999FF"],
        ["Antimoine","Sb",51,121.760,5,14,"#9999FF"],
        ["Tellure","Te",52,127.60,5,15,"#00FF66"],
        ["Iode","I",53,126.9045,5,16,"#00FF66"],
        ["Xenon","Xe",54,131.293,5,17,"#00CCFF"],
        ["Cesium","Cs",55,132.9054,6,0,"#FF9900"],
        ["Baryum","Ba",56,137.327,6,1,"#FFFF33"],
        ["Lanthane","La",57,138.9055,6,2,"#FFCCCC"],
        ["Cerium","Ce",58,140.116,8,4,"#CCCC66"],
        ["Praseodyme","Pr",59,140.9076,8,5,"#CCCC66"],
        ["Neodyme","Nd",60,144.24,8,6,"#CCCC66"],
        ["Promethium","Pm",61,145,8,7,"#CCCC66"],
        ["Samarium","Sm",62,150.36,8,8,"#CCCC66"],
        ["Europium","Eu",63,151.964,8,9,"#CCCC66"],
        ["Gadolinium","Gd",64,157.25,8,10,"#CCCC66"],
        ["Terbium","Tb",65,158.9253,8,11,"#CCCC66"],
        ["Dysprosium","Dy",66,162.500,8,12,"#CCCC66"],
        ["Holmium","Ho",67,164.9303,8,13,"#CCCC66"],
        ["Erbium","Er",68,167.259,8,14,"#CCCC66"],
        ["Thulium","Tm",69,168.9342,8,15,"#CCCC66"],
        ["Ytterbium","Yb",70,173.04,8,16,"#CCCC66"],
        ["Lutecium","Lu",71,174.967,8,17,"#CCCC66"],
        ["Hafnium","Hf",72,178.49,6,3,"#FFCCCC"],
        ["Tantale","Ta",73,180.9479,6,4,"#FFCCCC"],
        ["Tungstene","W",74,183.84,6,5,"#FFCCCC"],
        ["Rhenium","Re",75,186.207,6,6,"#FFCCCC"],
        ["Osmium","Os",76,190.23,6,7,"#FFCCCC"],
        ["Iridium","Ir",77,192.217,6,8,"#FFCCCC"],
        ["Platine","Pt",78,195.078,6,9,"#FFCCCC"],
        ["Or","Au",79,166.9665,6,10,"#FFCCCC"],
        ["Mercure","Hg",80,200.59,6,11,"#FFCCCC"],
        ["Thallium","Tl",81,204.3833,6,12,"#9999FF"],
        ["Plomb","Pb",82,207.2,6,13,"#9999FF"],
        ["Bismuth","Bi",83,208.9803,6,14,"#9999FF"],
        ["Polonium","Po",84,209,6,15,"#9999FF"],
        ["Astate","At",85,210,6,16,"#00FF66"],
        ["Radon","Rd",86,222,6,17,"#00CCFF"],
        ["Francium","Fr",87,223,7,0,"#FF9900"],
        ["Radium","Ra",88,226,7,1,"#FFFF33"],
        ["Actinium","Ac",89,227,7,2,"#FFCCCC"],
        ["Thorium","Th",90,232.0381,9,4,"#FF3300"],
        ["Protactinium","Pa",91,231.0359,9,5,"#FF3300"],
        ["Uranium","U",92,238.02891,9,6,"#FF3300"],
        ["Neptunium","Np",93,237,9,7,"#FF3300"],
        ["Plutonium","Pu",94,244,9,8,"#FF3300"],
        ["Americium","Am",95,243,9,9,"#FF3300"],
        ["Curium","Cm",96,247,9,10,"#FF3300"],
        ["Berkelium","Bk",97,247,9,11,"#FF3300"],
        ["Californium","Cf",98,251,9,12,"#FF3300"],
        ["Einsteinium","Es",99,252,9,13,"#FF3300"],
        ["Fermium","Fm",100,257,9,14,"#FF3300"],
        ["Mendelevium","Md",101,258,9,15,"#FF3300"],
        ["Nobelium","No",102,259,9,16,"#FF3300"],
        ["Lawrencium","Lr",103,262,9,17,"#FF3300"],
        ["Rutherfordium","Rf",104,261,7,3,"#FFCCCC"],
        ["Dubnium","Db",105,262,7,4,"#FFCCCC"],
        ["Seaborgium","Sg",106,266,7,5,"#FFCCCC"],
        ["Bohrium","Bh",107,264,7,6,"#FFCCCC"],
        ["Hassium","Hs",108,269,7,7,"#FFCCCC"],
        ["Meitneium","Mt",109,268,7,8,"#FFCCCC"],
        ["Darmstadtium","Ds",110,271,7,9,"#FFCCCC"],
        ["Roentgenium","Rg",111,272,7,10,"#FFCCCC"],
        ["Copernicium","Cn",112,285,7,11,"#FFCCCC"],
        ["Ununtrium","Uut",113,184,7,12,"#9999FF"],
        ["Ununquadium","Uuq",114,289,7,13,"#9999FF"],
        ["Ununpentium","Uup",115,288,7,14,"#9999FF"],
        ["Ununhexium","Uuh",116,292,7,15,"#9999FF"],
        ["Ununseptium","Uus",117,"-",7,16,"white"],
        ["Ununoctium","Uuo",118,"-",7,17,"white"]
        ]
Ce site web utilise des cookies. En utilisant le site Web, vous acceptez le stockage de cookies sur votre ordinateur. Vous reconnaissez également que vous avez lu et compris notre politique de confidentialité. Si vous n'êtes pas d'accord, quittez le site.En savoir plus
  • teaching/progappchim/tableau_periodique_2011.txt
  • Dernière modification : 2021/04/19 21:00
  • de villersd