1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
| ######## fonctions ############
# Etablit la connection avec la base
def connection ():
# Connexion à la banque (attention à changer selon l'utilisateur, etc...)
bque = MySQLdb.connect(db="ma_table", host = "mon_host", user = "moua")
# Ouverture d'un curseur dans la banque
cursr = bque.cursor()
return cursr
# Fetch le curseur
def execute_requete (cursr,requete):
# Execute_requete de la requête
exe = cursr.execute(requete)
# Récupération du résultat
rst = cursr.fetchall()
return rst
# Enregistre l'objet "mon_dico" dans le fichier dicopydata.PyData
def dump_dico (nom_dico, mondico):
dico_PyData= nom_dico + ".PyData"
fichier_out = open(dico_PyData, "w")
cPickle.dump(mondico, fichier_out)
fichier_out.close()
# Recharge "mon-dico"
def load_dico (nom_dico, mondico):
dico_pydata= nom_dico + ".PyData"
fichier_in = open(dico_pydata, "r")
dico = cPickle.load(fichier_in)
fichier_in.close()
######################## corps du programme ################
# ma requete me rapporte une clé et 5 éléments
select_numacc = "SELECT clé, elt_1, elt_2, elt_3, elt_4, elt_5 FROM ma_table"
numaccs = execute_requete (curseur,select_numacc)
# Enregistre l'objet "dico_num_acc" dans le fichier dico_numaccs.PyData
dump_dico ('dico_numaccs', dico_num_acc)
# Recharge dico_numaccs depuis "dico_numaccs.pydata"
load_dico ('dico_numaccs', dico_num_acc)
# et je voudrais faire un dictionnaire basé sur la clé, contenant
# les 4 elements et la liste des elt_5 possibles pour cette clé et
# les quatre premiers elements
for (clé, elt_1, elt_2, elt_3, elt_4, elt_5) in numaccs:
# ???????????????????????????????
# mais comment passer elt_5 dans une liste?
# ???????????????????????????????
liste_elt_5.append(elt_5)
dico_liste_numacc[clé]= (elt_1, elt2, elt_3, elt_4, liste_elt5)
print dico_liste_numacc [clé] |
Partager