[Python-es] extraer secuencias no adyacentes

Reynaldo Baquerizo reynaldomic en gmail.com
Sab Abr 17 21:09:31 CEST 2010


> me interesa hacer lo siguiente. dado un archivo quiero extraer secuencias  
> de palabras no adyacentes.
> por ejemplo, supongamos que mi archivo tiene la siguiente línea:
> 
> 	"La cookie caducará automáticamente cuando salga del navegador"
> 
> podría obtener secuencias adyacentes como
> [la, cookie]
> [cookie, caducará]
> [caducará, automáticamente]
> ...
> 
> pero mi idea es que estas secuencias no sean adyacentes, de forma que  
> pueda obtener secuencias como:
> [la, caducará] con un salto en la adyacencia
> [la, automáticamente] con dos saltos
> [cookie, cuando] con 3 saltos, etc.
> 
> alguno de ustedes sabe cómo podría hacerlo?
> 
> gracias por cualquier tip.
> 
> antonio

como no especificas si son sólo dos palabras, asumo que las quieres todas.
Si no es así, ya tienes algo con qué empezar.

def words(seq, distance):
    return (seq[i] for i in xrange(len(seq)) if i % distance == 0)

S = "La cookie caducara automaticamente cuando salga del navegador".split()
print list(words(S, 3))


-- 
Reynaldo



Más información sobre la lista de distribución Python-es