Python相当于echo -e?

时间:2011-09-01 22:18:23

标签: python

是否有一个等同于echo -e的python?

换句话说,是否有内置函数可以在Python中将r"\x50\x79\x74\x68\x6f\x6e"转换为"Python"

修改的 我添加了'r'前缀,以确保每个人都明白我不希望python解释器转换它。相反,我想将这个24个字符的字符串转换为6个字符的字符串。

2 个答案:

答案 0 :(得分:10)

我刚刚找到的正确方法是

>>> a = r"\x50\x79\x74\x68\x6f\x6e"
>>> print a
\x50\x79\x74\x68\x6f\x6e
>>> a.decode('string_escape')
'Python'

在测试时确保你正在逃避反斜杠(或使用原始'r'前缀)!

参考文献:

答案 1 :(得分:3)

无需转换。它们已经是相同的字符串

>>> "\x50\x79\x74\x68\x6f\x6e" == "Python"
True

如果实际上有一个不同的字符串"\\x50\\x79\\x74\\x68\\x6f\\x6e"实际上包含反斜杠("\x50\x79\x74\x68\x6f\x6e" 包含任何反斜杠),那么你会做

>>> s
'\\x50\\x79\\x74\\x68\\x6f\\x6e'
>>> s.decode('string-escape')
'Python'