如何表示原始字符串 ----------------------- 在大多数编程语言中, 例如在c语言中,"\n"表示换行,"\"在字符串中通常的含义是转义字符。 如果想表示"\", 那就需要两个反斜线"\\"来表示。这个反斜线也称为逃逸字符。 在python中,反斜线“有\”也是逃逸字符。如果字符串原始就很多反斜线字符,例如文件路径。 我们就需要再通过反斜线来转义,就要加多个反斜线,非常繁琐,如何避免这种情况呢? 在python中,可以使用"r"字符前导字符修饰字符串来表示这是一个原始字符串, 例如一个目录路径r"C:\zhang\code\python\python100" :: >>> s1 = r"C:\zhang\code\python\python100" >>> s1 'C:\\zhang\\code\\python\\python100' >>> print(s1) C:\zhang\code\python\python100 >>> len(s1) 30 >>> s2 = "C:\zhang\code\python\python100" >>> len(s2) 30 >>> s3 = "C:\\zhang\\code\\python\\python100" >>> len(s3) 30 在python中,反斜线后某些特定字符进行了转义,其他进行了转义,所以以上不加转义 正好也是正确的结果。但碰到某些特殊的字符就不正确了, 例如:: >>> s1 = "C:\\book" >>> len(s1) 7 >>> s2 = "c:\book" >>> len(s2) 6 因此需要对所有的反斜线进行转义,或者使用"r"来表示原始字符串。 常见的转义字符如下: ============= ====================================== 逃逸字符序列 含义 ============= ====================================== \\ Backslash (\) \' Single quote (') \" Double quote (") \a ASCII Bell (BEL) \b ASCII Backspace (BS) \f ASCII Formfeed (FF) \n ASCII Linefeed (LF) \r ASCII Carriage Return (CR) \t ASCII Horizontal Tab (TAB) \v ASCII Vertical Tab (VT) \ooo Character with octal value ooo (1,3) \xhh Character with hex value hh (2,3) ============= ====================================== 如果字符串本身有换行,那我们采用三引号字符串来包含他 :: """ Hello world Hello Beijing """