ValueError:invalid \ x escape

时间:2011-08-05 12:39:10

标签: python

python -c 'print "\x90" * 348 + "\x31\xc0\x83\xec\x01\x88\x04\x24\x68\x62\x61\x73\x68\x68\x62\x69\x6e\x2f\x8\xec\x01\xc6\x04\x24\x2f\x89\xe6\x50\x56\xb0\x0b\x89\xf3\x89\xe1\x31\xd2\xcd\x80\xb0\x01\x31\xdb\xcd\x80" + "\x30\xd1\xff\xff" * 35'
ValueError: invalid \x escape

知道是什么导致了这个错误吗?

4 个答案:

答案 0 :(得分:13)

此字符串中包含\x8\,请将其更改为\x08

答案 1 :(得分:7)

最有可能的是{p> \x8。它应该是每个转义两个十六进制数字。

答案 2 :(得分:4)

\x8不正确。

答案 3 :(得分:1)

另请注意,如果您未在多行注释中的\之前转义x,则可能会发生此错误。

e.g。在Python 2.7中:

def fn():
    """ Describing a file in the comments:
        C:\aaa\bbb\xxx\abc.txt
    """
    return None
fn()

提出异常:

  

ValueError:invalid \ x escape

可以通过将C:\aaa\bbb\xxx\abc.txt更改为C:\aaa\bbb\\xxx\abc.txt

来修复