TP 2 Section Sauvegarde et récupération
Bizarre, quand j'ai fait le découpage elle n'existait pas sur le sujet
This commit is contained in:
parent
a91aea4acb
commit
6db91e9541
3
S2/TP2/.gitignore
vendored
3
S2/TP2/.gitignore
vendored
|
@ -1 +1,2 @@
|
||||||
lexique*
|
lexique*
|
||||||
|
anagrammes.txt
|
124
S2/TP2/tp2.py
124
S2/TP2/tp2.py
|
@ -408,65 +408,91 @@ section('Comparaison des deux méthodes')
|
||||||
|
|
||||||
question(1)
|
question(1)
|
||||||
|
|
||||||
import time
|
# import time
|
||||||
|
|
||||||
debut = time.time()
|
# debut = time.time()
|
||||||
|
|
||||||
for i in range(30):
|
# for i in range(30):
|
||||||
anagrammes(LEXIQUE[i])
|
# anagrammes(LEXIQUE[i])
|
||||||
|
|
||||||
temps1 = time.time() - debut
|
# temps1 = time.time() - debut
|
||||||
|
|
||||||
debut = time.time()
|
# debut = time.time()
|
||||||
|
|
||||||
for i in range(30):
|
# for i in range(30):
|
||||||
anagrammes2(LEXIQUE[i])
|
# anagrammes2(LEXIQUE[i])
|
||||||
|
|
||||||
temps2 = time.time() - debut
|
# temps2 = time.time() - debut
|
||||||
|
|
||||||
print('La première méthode à mis %s secondes, et la deuxième %s secondes' %(temps1,temps2))
|
# print('La première méthode à mis %s secondes, et la deuxième %s secondes' %(temps1,temps2))
|
||||||
|
|
||||||
|
|
||||||
partie('Phrases d\'anagrammes') # Geoffrey
|
# partie('Phrases d\'anagrammes') # Geoffrey
|
||||||
|
|
||||||
|
# question(1)
|
||||||
|
|
||||||
|
|
||||||
|
# def arbre_vers_liste(arbre):
|
||||||
|
# # [[1, [3, [4]]], [2, [3, [4]]]] ⇒ [[1, 3], [1, 4], [2, 3], [2, 4]]
|
||||||
|
# print(arbre)
|
||||||
|
# possibilites = []
|
||||||
|
# # for i in arbre:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# return possibilites
|
||||||
|
|
||||||
|
# def annagrammes_arbre(liste):
|
||||||
|
# # TODO Docstring
|
||||||
|
# anagrammesPremier = anagrammes(liste[0])
|
||||||
|
# if len(liste) > 1: # Si il y a des anagrammes après
|
||||||
|
# res = []
|
||||||
|
# for i in anagrammesPremier:
|
||||||
|
# res.append([i, annagrammes_arbre(liste[1:])])
|
||||||
|
# return res
|
||||||
|
# else:
|
||||||
|
# return anagrammesPremier
|
||||||
|
|
||||||
|
# def developpement(mots):
|
||||||
|
# # [[1, 2], [3, 4]] ⇒ [[1, 3], [1, 4], [2, 3], [2, 4]]
|
||||||
|
# # TODO Docstring
|
||||||
|
# for annagrammes in mots:
|
||||||
|
# for annagramme in annagrammes:
|
||||||
|
# return False
|
||||||
|
|
||||||
|
|
||||||
|
# def annagrammes_phrase(phrase):
|
||||||
|
# # TODO Docstring
|
||||||
|
# mots = phrase.split()
|
||||||
|
# anagrammesArbre = annagrammes_arbre(mots)
|
||||||
|
# annagrammesMots = [anagrammes(i) for i in mots]
|
||||||
|
# return arbre_vers_liste(anagrammesArbre)
|
||||||
|
|
||||||
|
# print(annagrammes_phrase('orange orange orange')) # DEBUG
|
||||||
|
|
||||||
|
partie('Sauvegarde et récupération')
|
||||||
|
|
||||||
|
ANAGRAMMES_FICHIER = 'anagrammes.txt'
|
||||||
|
|
||||||
question(1)
|
question(1)
|
||||||
|
def sauver_dico():
|
||||||
|
f = open(ANAGRAMMES_FICHIER, 'w')
|
||||||
|
for i in ANAGRAMMES:
|
||||||
|
f.write(i + ':' + ':'.join(ANAGRAMMES[i]) + '\n')
|
||||||
|
f.close()
|
||||||
|
|
||||||
|
question(2)
|
||||||
|
sauver_dico()
|
||||||
|
from os.path import getsize
|
||||||
|
taille = getsize(ANAGRAMMES_FICHIER)
|
||||||
|
print('Le dictionnaire fait %d octets, soit %0.3f Mio.' % (taille, taille/1024/1024))
|
||||||
|
|
||||||
|
|
||||||
def arbre_vers_liste(arbre):
|
question(3)
|
||||||
# [[1, [3, [4]]], [2, [3, [4]]]] ⇒ [[1, 3], [1, 4], [2, 3], [2, 4]]
|
def charger_dico():
|
||||||
print(arbre)
|
ANAGRAMMES = dict()
|
||||||
possibilites = []
|
f = open(ANAGRAMMES_FICHIER, 'r')
|
||||||
# for i in arbre:
|
for l in f:
|
||||||
|
decoupe = ':'.split(str(f))
|
||||||
|
ANAGRAMMES[decoupe[0]] = decoupe[1:]
|
||||||
|
f.close()
|
||||||
return possibilites
|
|
||||||
|
|
||||||
def annagrammes_arbre(liste):
|
|
||||||
# TODO Docstring
|
|
||||||
anagrammesPremier = anagrammes(liste[0])
|
|
||||||
if len(liste) > 1: # Si il y a des anagrammes après
|
|
||||||
res = []
|
|
||||||
for i in anagrammesPremier:
|
|
||||||
res.append([i, annagrammes_arbre(liste[1:])])
|
|
||||||
return res
|
|
||||||
else:
|
|
||||||
return anagrammesPremier
|
|
||||||
|
|
||||||
def developpement(mots):
|
|
||||||
# [[1, 2], [3, 4]] ⇒ [[1, 3], [1, 4], [2, 3], [2, 4]]
|
|
||||||
# TODO Docstring
|
|
||||||
for annagrammes in mots:
|
|
||||||
for annagramme in annagrammes:
|
|
||||||
return False
|
|
||||||
|
|
||||||
|
|
||||||
def annagrammes_phrase(phrase):
|
|
||||||
# TODO Docstring
|
|
||||||
mots = phrase.split()
|
|
||||||
anagrammesArbre = annagrammes_arbre(mots)
|
|
||||||
annagrammesMots = [anagrammes(i) for i in mots]
|
|
||||||
return arbre_vers_liste(anagrammesArbre)
|
|
||||||
|
|
||||||
print(annagrammes_phrase('orange orange orange')) # DEBUG
|
|
||||||
|
|
||||||
|
|
Reference in a new issue