2. python 字符串常量

2. python 字符串常量

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' 
 
>>>

 
'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"
 

它常用于文档字符串,或者注释大段的代码

posted @ 2018-01-26 11:43  全威儒  阅读(379)  评论(0编辑  收藏  举报