目的:熟練使用不同的容器或函數操作字符串,這裏只介紹常用的方法。
環境:windows 7 python 3.5.3 或 ubuntu 16.04 python 3.5.2
情景:初學python接觸最多的數據應該就是字符串了,處理最多的也是,熟練一些函數和方法,可以更有效率的完成想要的操作,這裏只介紹處理字符串常用的一些方法。
字符串的存儲:
這裏的儲存是更直白的說明,專業的應該是指向吧(指向確實更合理),如果不方便理解所以就暫時理解爲儲存吧,需要專業解釋可以查看官發文檔。
類型有:字符、列表、字典、元組、集。
字符串str()這個很常用;
列表list()就是很多的字符有順序的排列集合;
元組tuple()不可更改的列表集合;
字典dist()無序的帶表示的集合;
集set()無值的字典。
以上的值都可以是空的,即空字符串。
下面開始介紹處理方法:
基礎:
字符串的連接用加號+:
sa = 'aa' sb = 'bb' print(sa + sb)
字符串重複用星號*:
sc = 'cc' print(sc * 5)
多一點的字符串輸出可以使用字符串格式符處理(私鏈)
常用的:
切片運算符[],這是一對中括號,這個是很常用,也是很重要的入門,字符串、列表、元組都可以用,字典和集是無序的,不能切,只能用索引,也是一對中括號,啊哈哈。
切片格式:對象[何處開始:何處截至:怎麼切]
舉例:
sc = 'ricky wrote a sentence.' print(sc[0:11:1])
輸出ricky wrote,解釋是從0開始,移動11次,每次跳過1個數,這裏有4點:
1)這是一個完整的寫法,可以省略部分,寫成print(sc[:11];
2)第一個前面是零,所以要從零開始數;
3)截至11理解爲從零開始跳11次;
4)每次跳的格數默認是1可不寫,也可以是負數,反着跳。
在字符串中每個字節爲單位一,列表和元組中每個元素爲單位一:
sd = ['aa', 'bb', 'cc'] print(sd[0:2:1])
輸出['aa', 'bb'],當省略所有的參數[:]則表格從開始到結束,獲取一個完整的,冒號不能省略。
小技巧,使用切片操作反着切就可以得到一個反序的字符串或列表。
索引:
索引也是從零開始的,取出指定位置的值,只需要一個參數,字典的索引就是指示關鍵字,然後取出對應的值,集沒有值。
函數方法:
使用格式是:字符串.函數()
upper(), 字母大寫
lower(), 字母小寫
isupper(), 是否爲大寫
islower(), 是否爲小寫
swapcase(),大小寫互換
capitalize(), 首字母大寫
rjust(number[, 補齊內容]) 右對齊
ljust(number[, 補齊內容]) 左對齊
center(number[, 補齊內容]) 居中對齊
strip() 刪除左右字符,默認爲空格換行
rstrip() 刪除右邊字符,默認爲空格換行
lstrip() 刪除左邊字符,默認爲空格換行
擴展:
高效的字符串連接和拆分,join()和split()(私鏈)
還有一個很強大的方法,用正則表達式(私鏈)。
注意:處理字符串時一定要注意編碼問題(私鏈)。