我现在正在学习Python,并想尝试所有的转义序列,但我的代码似乎有一个bug。请帮帮我找到它?
我的代码:
string = """backslash - \\\nsingle quote - \'\ndouble quote - \"
ASCII bell - \a Lorem
ASCII backspace - \b Lorem
ACII formfeed - \f Lorem
Unicode - \N{prabhu} Ipsum
Carriage return - \r Ipsum
16 bit Hex value - \u1234
32 bit Hex value - \U12345678 ASCII Vertical tab - \v
Octal value character - \123
Hex value - \x12
"""
print(string)
- >错误:SyntaxError :( unicode错误)' unicodeescape'编解码器不能解码位置137-146中的字节:未知的unicode字符名称
答案 0 :(得分:1)
罪犯是\N{prabhu}
和\U12345678
。
\U12345678
是非法的,因为它远远落后于有效范围限制(0010ffff
)。十六进制中的12345678
为305419896
,其中unicode以1114111
(0010ffff
)结束。
\N{prabhu}
是非法的,因为它不是有效的unicode字符名称。