__add__函數 (在后面追加字符串)
s1 ='Hello' s2 = s1.__add__(' boy!') print(s2) #輸出:Hello boy!
__contains__(判斷是否包含某字符串,包含則返回True)
s1 = 'Hello' result = s1.__contains__('He') print(result) #輸出:True
__eq__(判斷兩個字符串是否相同,相同則返回True)
s1 = 'Hello' s2 = 'How' result = s1.__eq__(s2) print(result) #輸出:False
__format__
#占位
__getattribute__
#占位
__getitem__
#占位
__getnewargs__
#占位
__ge__ (大於或等於)
print('b'.__ge__('a')) #輸出:True
__gt__(大於)
print('b'.__ge__('a')) #輸出:True
__hash__
#占位
__iter__
#占位
__len__(返回字符串長度)
print('abc'.__len__()) #輸出:3
__le__(小於或等於)
print('b'.__le__('a')) #輸出:False
__lt__(小於)
print('b'.__lt__('a')) #輸出:False
__mod__
#占位
__mul__
#占位
__new__
#占位
__ne__
#占位
__repr__
#占位
__rmod__
#占位
__rmul__
#占位
__sizeof__
#占位
__str__(返回自已)
print('abc'.__str__()) #輸出:abc
capitalize(首字母大寫)
s = 'tom' print(s.capitalize()) #輸出:Tom
casefold(大寫轉換成小寫)
s = 'TOM' print(s.casefold()) #輸出:tom
center (指定長度和填充字符,內容居中,填充字符留空則為空格)
s = 'Tom' print(s.center(20,'-')) #輸出:--------Tom---------
count(計算某個字符串出現的個數,第二個參數:起始位置,第三個參數:結束位置)
s = 'aabbbcccccdd' print(s.count('cc',3,11)) #輸出:2
encode(編碼)
s = "中文" print(s.encode('gbk')) #輸出:b'\xd6\xd0\xce\xc4'
endswith(判斷字符串是否以某個字符或字符串結尾的,第二個參數:起始位置,第三個參數:結束位置)
s = 'Projects' print(s.endswith('ts')) print(s.endswith('e',0,5)) #輸出:True # True
expandtabs(把1個tab鍵轉換成7個空格)
s = 'H\ti' print(s.expandtabs()) #輸出:H i
find(查找某個字符或字符串的索引位置,第二個參數:起始位置,第三個參數:結束位置)
s = 'Hello' print(s.find('o')) print(s.find('o',0,3)) #找不到返回-1 #輸出:4 # -1
format(字符串格式化/拼接)
name = 'Tom' age = 18 s = '{0}\'s age is {1}'.format(name,age) print(s) #或者 str = '{name}\'s age is {age}' result = str.format(age=18,name='Tom') print(result) #輸出:Tom's age is 18
format_map
#占位
index(查找某個字符或字符串的索引位置,和find不一樣是,如果字符不存在,會報錯)
s = 'Hello' print(s.index('o')) print(s.index('e',0,3)) #輸出:4 # 1
isalnum(是否為字母或數字)
s = '!#' print(s.isalnum()) #輸出:False
isalpha(是否為字母)
s = '123' print(s.isalpha()) #輸出:False
isdecimal(是否為十進制數)
s = '123' print(s.isdecimal()) #輸出:True #True: Unicode數字,,全角數字(雙字節) #False: 羅馬數字,漢字數字 #Error: byte數字(單字節)
isdigit(是否為數字)
s = '123' print(s.isdigit()) #輸出:True #True: Unicode數字,byte數字(單字節),全角數字(雙字節),羅馬數字 #False: 漢字數字
isidentifier(是否為標識符/變量名)
s = '1num' print(s.isidentifier()) #輸出:False #因為變量名不能以數字開頭
islower(是否全部為小寫字母)
s = 'Hello' print(s.islower()) #輸出:False
isnumeric(是否為數字)
s = '123' print(s.isnumeric()) #輸出:True #True: Unicode數字,全角數字(雙字節),羅馬數字,漢字數字
isprintable(是否為可打印字符/能否原樣輸出)
s = '\n' print(s.isprintable()) #輸出:False
isspace(是否為空格)
print(' '.isspace()) print('\t'.isspace()) #輸出:True # True
istitle(是否為標題/每個單詞首字母大寫)
print('Hello Boy'.istitle()) print('hello boy'.istitle()) #輸出:True # False
isupper(是否全部為大寫字母)
print('BOY'.isupper()) print('Boy'.isupper()) #輸出:True # False
join(將序列中的元素以指定的字符連接生成一個新的字符串)
s = ['H','e','l','l','o'] print(''.join(s)) print('-'.join(s)) #輸出:Hello # H-e-l-l-o
ljust(指定長度和填充字符,內容左對齊,填充字符留空則為空格)
s = 'Hello' print(s.ljust(10,'-')) #輸出:Hello-----
lower(字符串全部換成小寫)
s = 'TOM' print(s.lower()) #輸出:tom
lstrip(移除字符串左側指定的字符,默認為空格)
s = ' Tom' print(s.lstrip()) #輸出:Tom
maketrans(創建字符映射的轉換表,配合translate函數使用)
intab = "abcde" outtab = "12345" trantab = str.maketrans(intab, outtab) str = "Hello abc" print (str.translate(trantab)) #輸出:H5llo 123
partition( 指定分隔符,將字符串進行分割)
s = 'IamTom' print(s.partition('am')) #輸出:('I', 'am', 'Tom')
replace(把字符串中的 old(舊字符串) 替換成 new(新字符串),如果指定第三個參數max,則替換不超過 max 次。)
s = 'Tom' print(s.replace('m','o')) #輸出:Too
rfind(從右邊查找指定字符串出現的位置,如果沒有匹配項則返回-1)
s = 'one two one' print(s.rfind('one')) print(s.rfind('one',0,6)) #指定起始和結束位置 #輸出:8 # 0
rindex(從右邊查找指定字符串出現的位置,如果沒有匹配項則報錯)
s = 'one two one' print(s.rindex('one')) print(s.rindex('one',0,6)) #指定起始和結束位置 #輸出:8 # 0
rjust(指定長度和填充字符,內容右對齊,填充字符留空則為空格)
s = 'Hello' print(s.rjust(10,'-')) #輸出:-----Hello
rpartition( 指定分隔符,從右邊開始將字符串進行分割)
s = 'IamTom_IamTom' print(s.rpartition('am')) #輸出:('IamTom_I', 'am', 'Tom')
rsplit(指定分隔符對字符串進行切片,如果指定第二個參數num,則只分隔num次,最后返回一個列表)
s = 'a b c d' print(s.rsplit()) print(s.rsplit(' ',2)) #從右邊開始,按空格分隔兩次 #輸出:['a', 'b', 'c', 'd'] # ['a b', 'c', 'd']
rstrip(刪除字符串末尾的指定字符,默認為空格)
s = '!!! I am Tom !!!' print(s.rstrip('!')) #輸出:!!! I am Tom
split(指定分隔符對字符串進行切片,如果指定第二個參數num,則只分隔num次,最后返回一個列表)
s = 'a b c d' print(s.split()) print(s.split(' ',2)) #從左邊開始,按空格分隔兩次 #輸出:['a', 'b', 'c', 'd'] # ['a', 'b', 'c d']
splitlines(按換行符來分隔字符串,返回一個列表)
s = 'a\nb\nc' print(s.splitlines()) #默認參數為False print(s.splitlines(True)) #指定Ture參數,則保留換行符 #輸出:['a', 'b', 'c'] # ['a\n', 'b\n', 'c']
startswith(判斷字符串是否以某個字符或字符串開頭的,第二個參數:起始位置,第三個參數:結束位置)
s = 'Projects' print(s.startswith('Pr')) print(s.startswith('e',4,8)) #輸出:True # True
strip(刪除字符串前后的指定字符,默認為空格)
s = '!!! I am Tom !!!' print(s.strip('!')) #輸出: I am Tom
swapcase(大小寫互換)
s = 'I am Tom' print(s.swapcase()) #輸出:i AM tOM
title(轉換成標題,就是每個單詞首字母大寫)
s = 'i am tom' print(s.title()) #輸出:I Am Tom
translate(根據maketrans方法創建的表,進行字符替換)
intab = "abcde" outtab = "12345" trantab = str.maketrans(intab, outtab) str = "Hello abc" print (str.translate(trantab)) #輸出:H5llo 123
upper(小寫轉換成大寫)
s = 'Hello' print(s.upper()) #輸出:HELLO
zfill(指定字符串的長度。原字符串右對齊,前面填充0)
s = 'Hello' print(s.zfill(10)) # 輸出:00000Hello