Python textwrap.wrap causando problemas con \ n

Así que recién reformateé un montón de código para incorporar textwrap.wrap, solo para descubrir que todos mis \ n se han ido. Aquí hay un ejemplo.

from textwrap import wrap def wrapAndPrint (msg, width=25): """ wrap msg to width, then print """ message = wrap(msg, width) for line in message: print line msg = ("Ok, this is a test. Let's write to a \nnewline\nand then " "continue on with this message") 

Si imprimo msg, obtengo lo siguiente

 >>> print msg Ok, this is a test. Let's write to a newline and then continue on with this message >>> 

Sin embargo, si lo envío para ser envuelto se ve así:

 >>> wrapAndPrint(msg) Ok, this is a test. Let's write to a newline and then continue on with this message >>> 

Pensé que podría tener algo que ver con la impresión de cadenas de una lista, así que intenté llamar índices específicos, así que intenté hacer que mi bucle for se pareciera más a esto:

 x = 0 for line in message: print line[x] x += 1 

Pero eso no hizo ninguna diferencia. Entonces, ¿qué estoy perdiendo aquí, o haciendo mal? Realmente necesito mis nuevas líneas, y también necesito que mi texto sea envuelto.

    De forma predeterminada, la función wrap() reemplaza los caracteres de espacio en blanco (incluida la nueva línea) con un solo espacio. Puede desactivar esto pasando el argumento de la palabra clave replace_whitespace=False .

    http://docs.python.org/library/textwrap.html#textwrap.TextWrapper.replace_whitespace