2. Missatge [3p]¶
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 no es poden fer servir llistes, tuples, diccionaris ni cap altra estructura de dades per a desar tots els elements dels iteradors.
Es demana que al mòdul miss (fitxer miss.py) facis la funció especificada a continuació:
- miss.miss(iti, L)¶
- Paràmetres:
- Retorna:
dos iteradors:
El primer sobre una seqüència de lletres que estan a les posicions indicades pels enters d”iti a la llista L en el seu mateix ordre.
El segon sobre la seqüència de les mateixes lletres del primer sense les vocals.
Per exemple:
>>> iti = iter([1, 4, 3, 6, 2, 7, 5, 8, 9])
>>> L = ['h', 'c', 'a', 'b', 'a', 'o', 'r', 'l', 'c', 'a']
>>> it1, it2 = miss(iti, L)
>>> it1 == iter(it1) and it2 == iter(it2)
True
>>> list(it1)
['c', 'a', 'b', 'r', 'a', 'l', 'o', 'c', 'a']
>>> list(it2)
['c', 'b', 'r', 'l', 'c']
Disposeu d’un joc de proves més complet al fitxer tests-miss.txt.