打印字符串“喜欢”交互式解释器?

时间:2014-12-25 17:57:48

标签: python string

我喜欢Python交互式解释器打印字符串的方式,我想在脚本中重复这一点。但是,我似乎无法做到这一点。

实施例。我可以在翻译中这样做:

>>> a="d\x04"
>>> a
'd\x04'

但是,我不能在python本身中复制它

$ python -c 'a="d\x04";print a'
d

我想要这个,因为我想调试一个代码,其中包含大量具有类似不可打印字符的字符串。

有一种简单的方法吗?

3 个答案:

答案 0 :(得分:6)

哦,那很快。

我可以使用repr()功能。也就是说,在我的例子中,

python -c 'a="d\x04";print repr(a)'

答案 1 :(得分:4)

您正在寻找repr()

>>> a = 'd\x04'
>>> a
'd\x04'
>>> print(a)
d
>>> repr(a)
"'d\\x04'"
>>> print(repr(a))
'd\x04'

答案 2 :(得分:0)

将其设为原始字符串(如果可能)

$ python -c 'a=r"d\x04";print a'
d\x04
$ python -c 'a="d\x04";print "%r"%a'
d\x04

修改

正如你所说,你不能把它变成一个原始字符串,那么你将不得不使用另一个答案中所述的repr() ..