62 lines
1.4 KiB
Python
62 lines
1.4 KiB
Python
#! /usr/bin/env python3
|
|
"""
|
|
python3 diu-dico-english.py
|
|
"""
|
|
__author__ = "Laure Gonnord"
|
|
__copyright__ = "Univ Lyon1, 2019"
|
|
|
|
import time
|
|
|
|
# Comparaison rapide liste/dictionnaires.
|
|
# Nécessite le fichier dico.en2fr récupéré de http://www.june29.com/IDP/files/French.txt (on a enlevé les lignes du début)
|
|
|
|
|
|
# Liste
|
|
def update_list(mot, trad, mylist):
|
|
mylist.append((mot, trad))
|
|
|
|
|
|
def load_list(nomFichier, dico):
|
|
"""
|
|
charge les mots du fichier dans la liste
|
|
"""
|
|
with open(nomFichier) as fichier:
|
|
for ligne in fichier:
|
|
(mot, trad) = ligne.strip().split("\t")
|
|
# print(mot, trad)
|
|
update_list(mot, trad, dico)
|
|
|
|
|
|
def search_tuple(tups, elem):
|
|
for (mot, trad) in tups:
|
|
if (mot == elem):
|
|
return trad
|
|
raise Exception("search tuple: not found")
|
|
|
|
|
|
# Dictionnaire
|
|
# TODO : update, load.
|
|
|
|
|
|
################## Programme principal ######################
|
|
|
|
|
|
fichier = 'dico.en2fr'
|
|
NBTRIES = 10000
|
|
|
|
# initialisation et chargement de la liste
|
|
mylist = []
|
|
startTime = time.time()
|
|
load_list(fichier, mylist)
|
|
endTime = time.time()
|
|
print("La liste est chargée en (s)", (endTime - startTime))
|
|
print("la traduction de dog est ", search_tuple(mylist, "dog"))
|
|
|
|
startTime = time.time()
|
|
for i in range(NBTRIES):
|
|
search_tuple(mylist, "house")
|
|
endTime = time.time()
|
|
print("mes recherches ont coûté ", (endTime - startTime))
|
|
|
|
# TODO : faire la même chose avec un dictionnaire
|