打印逃过海峡的表示(Print escaped representation of a str)

2019-07-20 03:40发布

如何打印字符串的转义表示,例如,如果我有:

s = "String:\tA"

我想输出:

String:\tA

在屏幕上而不是在

String:    A

Java中的等价物的功能是:

String xy = org.apache.commons.lang.StringEscapeUtils.escapeJava(yourString);
System.out.println(xy);

从阿帕奇共享郎

Answer 1:

你想用字符串编码string_escape编解码器:

print s.encode('string_escape')

或者您可以使用repr()函数 ,它将把字符串转换成它包括引号蟒蛇文字表示:

print repr(s)

示范:

>>> s = "String:\tA"
>>> print s.encode('string_escape')
String:\tA
>>> print repr(s)
'String:\tA'

在Python 3,你会寻找unicode_escape编解码器来代替:

print(s.encode('unicode_escape'))

这将打印一个字节值。 把这一回一个Unicode值,从ASCII刚刚解码:

>>> s = "String:\tA"
>>> print(s.encode('unicode_escape'))
b'String:\\tA'
>>> print(s.encode('unicode_escape').decode('ASCII'))
String:\tA


Answer 2:

您可以使用repr

print repr(s)

演示

>>> s = "String:\tA"
>>> print repr(s)
'String:\tA'

这将给报价 - 但你可以很容易地切那些关:

>>> print repr(s)[1:-1]
String:\tA


Answer 3:

print repr(string)一杆



Answer 4:

与以往一样,它在python容易:

print(repr(s))


Answer 5:

print使用str ,其处理逃逸。 你想repr

>>> a = "Hello\tbye\n"
>>> print str(a)
Hello   bye

>>> print repr(a)
'Hello\tbye\n'


文章来源: Print escaped representation of a str