3. Encadena (3 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 no es poden fer servir llistes, tuples, diccionaris ni cap altra estructura de dades per a desar tots els elements dels iteradors.
En un fitxer anomenat encadena.py deseu la funció especificada a continuació.
- encadena.cadenes(itts, n)¶
- Paràmetres:
itts – un iterable format d’una sequència d’iterables sobre enters (
int)n – un enter
- Retorna:
un iterador sobre una seqüència dels elements múltiples de n de tots els iterables de itts, l’un darrera de l’altre i en el mateix ordre que els iterables originals.
Per exemple:
>>> it = cadenes([[2, 3, 4, 6], [8, 8, 1], [11, 12, 13, 14, 15]], 2)
>>> next(it)
2
>>> next(it)
4
>>> for e in it:
... print(e, end='-')
...
6-8-8-12-14-
Disposeu d’un joc de proves més complet al fitxer tests-cadenes.txt.