Python如何在包含'\ n'的行中打印带有换行符的文本

时间:2017-12-16 06:04:47

标签: python python-3.x printing line-breaks

我有像n"sdfsdfdsf \n sdfdsfsdf \n sdfdsfdsf..." n这样的文字。我需要打印此文本,但每次有\n时,我都需要打印一个换行符并将文本正文打印成单独的行。

我该怎么做?

EDIT1: 我从套接字事务中获取此文本,我只想以一种漂亮的方式打印它。

b'\r\n\r\nSERIAL Debugger\r\n--------------\r\n>fyi * -\r\nThis is a test: 0 (-)\r\nthis is a test\r\nnew level(-)\r\

1 个答案:

答案 0 :(得分:4)

你有二进制数据,Python不知道你想如何打印它。所以解码它,知道数据所在的编码(我使用的是UTF-8):

Python 3.6.1 (default, Mar 23 2017, 16:49:06)

>>> text = b'\r\n\r\nSERIAL Debugger\r\n--------------\r\n>fyi * -\r\nThis is a test: 0 (-)\r\nthis is a test\r\nnew level(-)\r\n'

>>> print(text)
b'\r\n\r\nSERIAL Debugger\r\n--------------\r\n>fyi * -\r\nThis is a test: 0 (-)\r\nthis is a test\r\nnew level(-)\r\n'

>>> print(text.decode())


SERIAL Debugger
--------------
>fyi * -
This is a test: 0 (-)
this is a test
new level(-)

但是为了打印而转换数据听起来不对。