# 零基础学python-7.2 字符串常量 1.单双引号字符串是一样的 ~~~ >>> 'abc',"abc"   ('abc', 'abc')   >>>    ~~~ 当你的python照着上面的例子来写,这个时候单双引号字符串是一样的。两者可以互换。 我们甚至可以在单双引号直接引入对方 ~~~ >>> 'abc"d',"abc'd"   ('abc"d', "abc'd")   ~~~ 在任意表达式中,python会自动合并相连的字符串,尽管它们之间没有通过+连接 ~~~ >>> 'abc"d',"abc'd"   ('abc"d', "abc'd")   ~~~ 还有,就像上面的几个例子,在字符串中间加上逗号,最后形成的是元组而不是字符串 2.使用转义字符表示特殊字符 ~~~ >>> a='abc\ndef\r'   >>> a   'abc\ndef\r'   >>> print(a)   abc   def      >>>    ~~~ 看上面的例子,字符串之间加上转义字符,如果我们直接用变量打印,他会把所有字符都打印出来,但是如果使用print打印,转义字符会从原来的字符串变成二进制值,例如:\n代表制表符等等 常见的转义字符: | 转义 | 意义 | |---|---|---| | \ | 连续,接着上面一行 | | \\ | 反斜杠 | | \' | 单引号 | | \" | 双引号 | | \a | 响铃 | | \b | 倒退 | | \f | 换页 | | \n | 换行 | | \r | 返回 | | \t | 水平制表符 | | \v | 垂直制表符 | | \N{id} | unicode数据库id | | \uhhhh | unicode16位的十六进制值 | | \Uhhhh | unicode32位的十六进制值 | | \xhh | 十六进制值 | | \ooo | 八进制值 | | \0 | Null | | \other | 不转义 | 3.raw字符串抑制转义 有很多时候我们需要打开文件等,那么就需要输入路径,特别是window的路径,大多使用反斜杠,这个时候就会出现问题 例如: ` handler=open('c:\nb123.txt','w')  ` 这个时候就出问题了,本来是打开nb123这个文本文件,但是由于前面有个反斜杠,在转义当中是换行,引起歧义 所以,我们需要把路径改成下面的样子: ~~~ handler=open(r'c:\nb123.txt','w')   handler=open('c:\\nb123.txt','w')   ~~~ 这个时候就是合法的,使用r来抑制转义,或者使用双反斜杠 4.使用三重双引号来输入多字符串 ~~~ >>> a="""aaabbb  ccdcdef'ddfdfd"""   >>> a   "aaabbb\nccdcdef'ddfdfd"   ~~~ 它常用于文档字符串,或者注释大段的代码 就说到这里,谢谢大家