2. Índexs de les paraules de longitud parell (5 punts)¶
Avís
Per a resoldre aquest exercici no es poden fer servir
iteracions (ni for ni while ), només les
funcions predefinides de Python i les dels
mòduls itertools, functools i
operator. Tampoc es poden fer servir llistes, tuples,
diccionaris ni cap altra estructura de dades per a desar tots els
elements dels iterables.
Al mòdul long_parell (fitxer long_parell.py), escriviu-hi funció següent:
- long_parell.indexs_paraules_parells(it)¶
- Paràmetres:
it – iterador sobre una seqüència S de paraules
- Retorna:
iterador sobre la seqüència dels índexs de les paraules de longitud parell de S, entenent que l’índex del primer element d’una seqüència és el zero.
Per exemple,
>>> it = iter(['casa', 'parella'])
>>> it2 = indexs_paraules_parells(it)
>>> next(it2)
0
>>> for x in it2:
... print(x, end=',')
>>> it6 = iter(['xiuxiuejar', 'tendresa', 'moixaina', 'lletraferida', 'lletraferit', 'capvespre', 'enraonar', 'aixopluc', 'batzegada', 'malbaratar'])
>>> it7 = indexs_paraules_parells(it6)
>>> next(it7)
0
>>> for x in it7:
... print(x, end=',')
1,2,3,6,7,9,
>>> it3 =indexs_paraules_parells(iter('la casa de noia rossa estava ben buida'.split()))
>>> for x in it3:
... print(x, end=',')
0,1,2,3,5,
Disposeu d’un joc de proves al fitxer tests-indexslp.txt.