PDA

Ver la Versión Completa : ¿Cómo sería este código de Python en pesudocódigo?


Javier_920
21-12-2012, 20:18:10
Hola. Necesito ayuda. Estoy haciendo un corrector ortográfico y encontré un código de 25 líneas en python (el cual comprobé que funciona), pero no me puedo meter de lleno en Python. Si alguien entiende, podría decirme en pseudocodigo qué es lo que hace? Es para hacerlo despues en Delhpi 6.

Gracias.
-------------------------------------------------------------------------------------------------------------------------------------------
import re, collections

def words(text): return re.findall('[a-z]+', text.lower())

def train(features):
model = collections.defaultdict(lambda: 1)
for f in features:
model[f] += 1
return model

NWORDS = train(words(file('big.txt').read()))

alphabet = 'abcdefghijklmnopqrstuvwxyz'

def edits1(word):
splits = [(word[:i], word[i:]) for i in range(len(word) + 1)]
deletes = [a + b[1:] for a, b in splits if b]
transposes = [a + b[1] + b[0] + b[2:] for a, b in splits if len(b)>1]
replaces = [a + c + b[1:] for a, b in splits for c in alphabet if b]
inserts = [a + c + b for a, b in splits for c in alphabet]
return set(deletes + transposes + replaces + inserts)

def known_edits2(word):
return set(e2 for e1 in edits1(word) for e2 in edits1(e1) if e2 in NWORDS)

def known(words): return set(w for w in words if w in NWORDS)

def correct(word):
candidates = known([word]) or known(edits1(word)) or known_edits2(word) or [word]
return max(candidates, key=NWORDS.get)

mamcx
21-12-2012, 21:41:53
Podrias usar una etiqueta CODE y colocar las identaciones correctas? Puedes ponerlo entre etiquetas PHP para que pinte la sintaxis.

Ademas, sin ejemplo de que hay en big.txt no se puede testear.

P.D: Si lo quieres en delphi, porque mejor no buscas un ejemplo en delphi? Pasar codigo de un lenguaje a otro es cosa complicada, no de entenderlo, sino el de mapear cada concepto de uno a otro...

Casimiro Notevi
21-12-2012, 21:58:32
...


Recuerda poner los tags al código fuente, ejemplo:

http://www.clubdelphi.com/images/UtilizarTAGs.png

Gracias :)