You are given a string of words (x), for each word within the string you need to turn the word 'inside out'. By this I mean the internal letters will move out, and the external letters move toward the centre. 
If the word is even length, all letters will move. If the length is odd, you are expected to leave the 'middle' letter of the word where it is. 
An example should clarify:
'taxi' would become 'atix'
'taxis' would become 'atxsi'
def inside_out(s):
    return ' '.join( w[:m][::-1] + w[m] * (L%2) + w[-m:][::-1] * (L>1)
                     if w else w
                     for w,m,L in map(lambda w: (w, len(w)//2, len(w)), s.split(' ')) )
def inside_out(s):
    return ' '.join( w[:m][::-1] + w[m] * (L%2) + w[-m:][::-1] * (L>1)
                     if w else w
                     for w,m,L in map(lambda w: (w, len(w)//2, len(w)), s.split(' ')) )