1、單雙引號字符串:在Python字符串中,單引號和雙引號字符是能夠互換的。程序員
Python會自動在任意的表達式中合併相鄰的字符串常量,儘管能夠簡單地在它們之間增長+操做符來明確地表示這是一個合併操做。ide
Eg:編碼
>>> title = "Meaning" 'of' "Life"spa
>>> titlecode
'MeaningofLife'對象
2、 三重引號編寫多行字符串模塊:也稱爲快字符串。這份形式以三重引號開始(單引號和雙引號均可以),並緊跟任意行數的文本,而且以三重引號結尾。嵌入在這個字符串文本中的單引號和雙引號也會但不是必須轉義——直到Python看到和這個常量開始時一樣的三重引號,這個字符串纔會結束索引
Eg: >>> nantra = """Always lookip
... on the bright內存
... side of life."""字符串
>>> nantra
'Always look\non the bright\nside of life.'
3、Unicode字符:Unicode字符常被稱爲「寬」字符串。由於每一個字符也許在內存中會佔用大於一個字節的空間,與通常字符串相比,Unicode字符串容許程序編碼更豐富的字符集。Unicode的字符串典型地應用於支持國際化的應用(一些時候稱爲「il8」,爲了壓縮這個英文單詞頭尾之間的18個字母)。例如,它容許程序員在Python腳本中直接支持從歐洲到亞洲的字符集。由於這些字符集有不少字符,以致於不可以僅使用一個字節來表示,因此Unicode每每就是用來處理這些形式的文本的。
在Python中,能夠在腳本中經過在開頭的引號前增長字母U(大寫或小寫)編寫一個Unicode字符串:
Eg:
>>> s = U'spam'
>>> s
'spam'
由於Unicode是用來處理多字節字符的,因此可以使用特殊的「\u」和「\U」轉義字符去編碼大於8bit的二進制值:
Eg: >>> u'ab\x20cd'
'ab cd'
>>> u'ab\u0020cd'
'ab cd'
>>> u'ab\U00000020cd'
'ab cd'
4、字符串的基本操做
一、 字符串能夠經過「+」操做符進行合併,經過「*」操做符進行重複。
Eg: >>> 'abc' + 'def'
'abcdef'
>>> 'Ni!' * 4
'Ni!Ni!Ni!Ni!'
二、索引和分片
由於將字符串定義爲字符的有序集合,因此咱們可以經過其位置得到他們的元素。在Python中,字符串中的字符是經過索引(經過字符串以後的方括號中提供所須要的元素數字的偏移量)提取的。Python的偏移量是從0開始的,並比字符串的長度小1。與C語言不一樣的是,Python還支持在字符串中使用負偏移量的方法從序列中獲取元素。一個負偏移與這個字符型的長度相加後獲得這個字符串的正的偏移值。能夠將負偏移認做是從結束處反向計數,負偏移量是從-1開始計數。
Eg: >>> S = 'spam'
>>> S[0], S[-2]
('s', 'a')
總結:
· 索引(s[i])獲取特定偏移的元素:
——第一個元素的偏移爲0;
——負偏移索引意味着從最後或右邊反向進行計數。
· 分片(s[i:j])提取對應的部分做爲一個序列:
——上邊界(右邊)並不包含在內;
——分片的邊界默認爲0和序列的長度,若是沒有給出的話;
——s[1:3]獲取了從偏移爲1的元素,直到但不包括偏移爲3的元素;
——s[:-1]獲取了從偏移爲0直到可是不包括最後一個元素。
Eg: >>> s[1:3]
'pa'
>>> s[:-1]
'spa'
擴展分片:在Python2.3中,分片表達式增長了一個可選的第三個索引,用做步進(有時稱爲是stride)。步進添加進每一個提取元素的索引中。完整形式的分片如今變成了X[I:J:K],這表示「索引X對象中的元素,從偏移爲I開始知道偏移爲J-1,每一個K元素索引一次」。
Eg: >>> d = 'doajgijaipjoaeoi'
>>> d[1:15:2]
'ojiapoe'