[Python-es] extraer secuencias no adyacentes

Rolando Espinoza La Fuente darkrho en gmail.com
Dom Abr 18 22:40:13 CEST 2010


On Sun, Apr 18, 2010 at 4:18 PM, Reynaldo Baquerizo
<reynaldomic en gmail.com> wrote:
>
> Hola,
>
>> def word_sequences(words, step=1):
>>     step = max(step, 1)
>>     i = 0
>>     while i < len(words) - step:
>>         yield (words[i], words[i+step])
>>         i += 1
>
> Esto no es idiomático,
> qué tal:
>
> def words(seq, distance):
>    for i in xrange(len(seq) - distance):
>        yield seq[i], seq[i + distance]

Que tal:

>>> seq = "la cookie caducará automaticamente cuando salga del navegador".split()
>>> zip(seq, seq[2:])
[('la', 'caducar\xc3\xa1'),
 ('cookie', 'automaticamente'),
 ('caducar\xc3\xa1', 'cuando'),
 ('automaticamente', 'salga'),
 ('cuando', 'del'),
 ('salga', 'navegador')]

~Rolando



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