Muchas gracias por los consejos. Por cierto he instalado Anki. Me ha sorprendido lo bien que está. Efectivamente he realizado el programa para aprender Python y de paso dotarme de una utilidad para memorizar vocabulario ingles. Dejo el código que he creado para que hagais las mejoras que veais oportunas y así pueda aprender más: ------------ # -*- coding: utf-8 -*- import random import os.path class Diccionario(): def __init__(self, nfich="diccionario.txt"): self.dic=[] self.nfich=nfich self.abre() def guardar(self): f=open(self.nfich,"w") for l in self.dic: f.write(l) f.write("\n") f.close() def abre(self): if os.path.exists(self.nfich): f=open(self.nfich,"r") for l in f: self.dic.append(l[:-1]) f.close() print "Abierto con %s registros" % len(self.dic) else: print "No existe el fichero." def agregar(self): while True: print "--- Agregar Palabra - 0: Salir ---" c=raw_input("Ingles.: ") if c=="0": break v=raw_input("Español: ") if v=="0": break self.dic.append(c+";"+v) def vertodo(self): for l in self.dic: c,v = l.split(";") print "Ing/Esp: ",c," - ",v def aleatorio(self): p=0 n= len(self.dic) while True: print "0: Salir. Puntos: ",p l= self.dic[random.randint(0,n-1)] i,e = l.split(";") print " Ing: ",i, ee = raw_input(" Esp.: ") if ee=="0": break if ee==e: p +=1 print "Correcto es ",e," Escribió: ",ee else: print "Error es ",e," Escribió: ",ee def busca(self): g=raw_input("Palabra a buscar: ") print "....................." for l in self.dic: if l.lower().find(g.lower())>=0: print l print "....................." def menu(): print """ 1- Agregar. 2- Ver Todo. 3- Preguntas aleatorias. 4- Buscar. 8- Guardar. 9- Abrir. 0- *Salir*""" v=raw_input("Opción: ") return v def main(): di = Diccionario("dicionario.txt") op="" #fmenu={"1":agregar(),"2":guardar(nfich),"3":abre(nfich)} while True: op=menu() if op=="1": di.agregar() elif op=="2": di.vertodo() elif op=="3": di.aleatorio() elif op=="4": di.busca() elif op=="8": di.guardar() elif op=="9": di.abre() elif op=="0": break main() ------------ El 13/10/2012 13:49, Daπid escribió:
Añado: si con esto quieres aprender Python, estupendo, es un proyecto divertido. Pero para aprender un idioma, hay métodos más optimizados. Aquí dos ejemplos gratuitos, escritos en Python, además:http://en.wikipedia.org/wiki/Anki http://en.wikipedia.org/wiki/Mnemosyne_(software) Quizá, con tiempo, puedas implementar el algoritmo en tu programa. Yo he pensado en adaptarme estos para teatro. |
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/