打印文本字符串python

2024-06-28 19:37:46 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨,我在尝试以正确格式打印文本字符串时遇到问题。 首先,我有一个带有字符串参数的对象,该参数用于元数据,如下所示:

obj {
    metadata: <str>
}

该对象将作为协议响应返回,并且我们将该对象用作该响应。在

打印对象提供:

^{pr2}$

当我打印对象元数据python将该值视为字符串,并按预期将转义符转换为换行符和相应的ascii值。在

当我试过的时候 打印代表(对象元数据)在

"\n)\n\x12foobar"

不幸的是,python打印文本,但将转义字符从八进制转换为十六进制。有没有一种方法可以用八进制转义字符来打印python文本,或者转换字符串,这样就可以像在对象中那样打印值了吗?在

谢谢你的帮助

到目前为止,我最糟糕的解决方案是

print str(obj).rstrip('\"').lstrip('metadata: \"')

为了得到正确的答案,但我想肯定有更聪明的方法

TLDR:

x = "\n)\n\022foobar"
print x

)
foobar

print repr(x)
'\n)\n\x12foobar'

如何让x按指定的方式打印


Tags: 数据对象方法字符串文本obj协议参数
1条回答
网友
1楼 · 发布于 2024-06-28 19:37:46

请试试这个:

print('\\\n)\\\n\\\022foobar') 

或者

^{pr2}$

转义符'\'对后面的字符有不同的解释,例如\n用于新行。在

双转义符'\\'或字母'r'会取消转义字元的解释。这在C语言中是类似的。在

相关问题 更多 >