¿Cuál es la forma más pitónica de aplicar una función en cada palabra en una cadena con múltiples tipos de espacios en blanco?
Supongamos que tengo una función
def f(a):
return a[::-1]
Quiero aplicar la función f a cada palabra en una cadena. Si la cadena consta solo de espacios, puedo hacer
>>> s = ' this is a banana '
>>> ' '.join(map(f, s.split(' ')))
' siht si a ananab '
Pero, ¿cómo puedo hacer esto cuando la cadena consta de múltiples tipos de espacios en blanco? (por ejemplo, \ t y \ n)
Por ejemplo, quiero cambiar
'\t \t this is a\tbanana \n'
a
'\t \t siht si a\tananab \n'