python符串的常見操作
1、find檢測str是否包含在mystr,如果是返回開始的索引值,否則返回-1
In [5]: mystr='hello world itcast and hahaitcast' In [6]: mystr.find('world') Out[6]: 6 In [7]: mystr.find('heihei') Out[7]: -1
2、index和find一樣只不過,str不在mystr中會報一個異常
In [8]: mystr.index('itcast') Out[8]: 12 In [9]: mystr.index('heihei')--------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-9-2cd231cae32a> in <module>() ----> 1 mystr.index('heihei') ValueError: substring not found
3、rfind、rindex從右往左找
In [10]: mystr.rfind('itcast') Out[10]: 27 In [12]: mystr.rindex('itcast') Out[12]: 27
4、count返回str在start和end之間,在mystr裡出現的次數
In [13]: mystr.count('itcast') Out[13]: 2
5、replace把mystr中的str1替換成str2,如果count指定則不超過count次數
In [18]: mystr Out[18]: 'hello world itcast and hahaitcast' In [19]: mystr.replace('world','World') Out[19]: 'hello World itcast and hahaitcast' In [21]: mystr.replace('itcast','xxxxx',1) Out[21]: 'hello world xxxxx and hahaitcast' In [22]: mystr.replace('itcast','xxxxx',2) Out[22]: 'hello world xxxxx and hahaxxxxx'
6、split以str為分隔符切片mystr,如果maxsplit有指定值,則分隔maxsplit個子字串
In [23]: mystr.split(' ') Out[23]: ['hello', 'world', 'itcast', 'and', 'hahaitcast'] In [24]: mystr.split(' ',2) Out[24]: ['hello', 'world', 'itcast and hahaitcast']
7、capitalize把字串的第一個字元大寫
In [25]: mystr.capitalize() Out[25]: 'Hello world itcast and hahaitcast'
8、title把字串的每個單詞首字母大寫
n [26]: mystr.title() Out[26]: 'Hello World Itcast And Hahaitcast'
9、startwith檢查字串是不是以“xxx”開頭,如果是返回True,否則返回False
In [27]: mystr.startswith('hello') Out[27]: True In [28]: mystr.startswith('wee') Out[28]: False
10、endwith檢查字串是不是以“xxx”結尾,如果是返回True,否則返回False
In [29]: mystr.endswith('cast') Out[29]: True In [30]: mystr.endswith('amst') Out[30]: False
11、lower轉換所有大寫字母為小寫
In [32]: mystr='HELLO WORLD ITCAST AND HAHAITCAST' In [33]: mystr.lower() Out[33]: 'hello world itcast and hahaitcast'
12、upper轉換所有小寫字母為大寫
In [34]: mystr='hello world itcast and hahaitcast' In [35]: mystr.upper() Out[35]: 'HELLO WORLD ITCAST AND HAHAITCAST'
13、ljust返回一個原字串左對齊,並使用空格填充至長度 width 的新字串
[36]: mystr.ljust(50) Out[36]: 'hello world itcast and hahaitcast '
14、center返回一個原字串居中,並使用空格填充至長度 width 的新字串
In [37]: mystr.center(50) Out[37]: ' hello world itcast and hahaitcast '
15、rjust返回一個原字串右對齊,並使用空格填充至長度 width 的新字串
In [38]: mystr.rjust(50) Out[38]: ' hello world itcast and hahaitcast'
16、lstrip刪除左邊的空白字元
In [39]: ly=' hello world ' In [40]: ly.lstrip() Out[40]: 'hello world '
17、rstrip刪除右邊的空白字元
In [41]: ly.rstrip() Out[41]: ' hello world'
18、strip刪除字串兩端的空白字元
In [42]: ly.strip() Out[42]: 'hello world'
19、partition把mystr以str分割成三部分,str前,str和str後
In [43]: mystr.partition('itcast') Out[43]: ('hello world ', 'itcast', ' and hahaitcast')
20、rpartition類似於 partition()函式,不過是從右邊開始.
In [44]: mystr.rpartition('itcast') Out[44]: ('hello world itcast and haha', 'itcast', '')
21、splitlines按照行分隔,返回一個包含各行作為元素的列表
In [51]: lyc='sadsa\nfasfs\nsadasd\nsad\nsd32dadas' In [52]: lyc.splitlines() Out[52]: ['sadsa', 'fasfs', 'sadasd', 'sad', 'sd32dadas']
22、isalpha如果 mystr 所有字元都是字母 則返回 True,否則返回 False
In [55]: lyc='sadsa\nfasfs\nsadasd\nsad\nsd32dadas' In [56]: lyc.isalpha() Out[56]: False In [57]: lyc='sadsadsasa' In [58]: lyc.isalpha() Out[58]: True
23、isdigit如果 mystr 只包含數字則返回 True 否則返回 False.
In [61]: lyc='1213213' In [62]: lyc.isd lyc.isdecimal lyc.isdigit In [62]: lyc.isdigit() Out[62]: True In [63]: lyc='sada123' In [64]: lyc.isd lyc.isdecimal lyc.isdigit In [64]: lyc.isdigit() Out[64]: False