2. Transformar una frase (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 no es poden fer servir llistes, tuples, diccionaris ni cap altra estructura de dades per a desar els elements dels iteradors.

Es vol transformar una frase formada per paraules de la següent manera:

  • En primer lloc, si la paraula és de més de dos caràcters es posa en majúscula el seu primer caràcter.

  • Seguidament, s’eliminen les paraules que contenen com a primera lletra la “H”.

En un fitxer anomenat transfil.py deseu la funció especificada a continuació.

transfil.transfil(it)
Paràmetres:

it – un iterador sobre una sequència de paraules (str), que representa una frase

Retorna:

un iterador sobre una seqüència de paraules, que formen la frase original transformada segons es descriu més amunt.

Per exemple:


>>> frase = "un titol de l' article. Un exemple, dos exemples. Hora d' anar a l' Hotel".split()
>>> for m in transfil(frase):
...     print(m, end=' ')
... 
un Titol de l' Article. Un Exemple, Dos Exemples. d' Anar a l' 

Disposeu d’un joc de proves més complet al fitxer tests-transfil.txt