1.字符串isdigit使用方法
str.isdigit()
如果字符串的所有字符都是十進制字符且該字符串至少有一個字符,則返回True,否則返回False。數(shù)字包括十進制字符和需要特殊處理的數(shù)字,如兼容性上標數(shù)字。這包括了不能用來組成10進制的數(shù)字,如Kharosthi數(shù)。嚴格地講,數(shù)字是指屬性值為Numeric_Tyoe=Digit或Numeric_Tyoe=Decimal的字符。
示例:
字符串為十進制字符
'0123'.isdigit()
或
a = '88'
print(a.isdigit())
字符串非十進制字符
'asd'.isdigit()
或
a = '8.8'
print(a.isdigit())
True效果如下:
'0123'.isdigit() ## 0開頭的數(shù)字,會True
True
a = '88'
print(a.isdigit())
True
False效果如下:
'asd'.isdigit()
False
a = '8.8' ### 浮點型非全數(shù)字,也會返回False
print(a.isdigit())
False
''.isdigit() ### 浮點為空,也會返回False
False
2.字符串isalpha使用方法
str.isalpha()
如果字符串中的所有字符都是字母,并且至少有一個字符,返回True,否則返回False。字符字符是指那些在Unicode字符數(shù)據(jù)庫中定義為“Letter”的字符,即那些具有“Lm”,“Lt”,“Lu”,“Ll”或“Lo”之一的通用類別屬性的字符。注意,這與Unicode標準中定義的“字母”屬性不同。
示例:
字符串為字母
'Holle'.isalpha()
字符串非全字母
'a1一sd'.isalpha()
或
a = 'Holle Worid!'
print(a.isalpha())
True效果如下:
'Holle'.isalpha()
True
False效果如下:
'a1一sd'.isalpha()
False
a = 'Holle Worid!' ## 字母中包含“空格”,標識符“!”“...”都是會報False
print(a.isalpha())
False
''.isalpha() # 字符串為空返回False
False
3.字符串islower使用方法
str.islower()
如果字符串中至少有一個區(qū)分大小寫的字符[4]且此類字符均為小寫則返回True,否則返回False
示例:
字符串為區(qū)分小寫字母
'holle'.islower()
a = 'holle worid!123都是'
print(a.islower())
字符串為不區(qū)分大小寫字母
'Holle'.islower()
True效果如下:
'holle'.islower()
True
a = 'holle worid!123都是' ## 包含數(shù)字漢字符號只要無大寫字母都返回Tuer
print(a.islower())
True
False效果如下:
'Holle'.islower() ## 字符串包含任何一個大寫字母都返回False
False
''.islower() # 字符串為空返回False
False
4.字符串isupper使用方法
str.isupper()
如果字符串中至少有一個區(qū)分大小寫的字符[4]且此類字符均為大寫則返回True,否則返回False
示例:
字符串為區(qū)分大寫字母
'AAAA'.isupper()
a = 'AAAA AAAAA!123都是'
print(a.isupper())
字符串為不區(qū)分大小寫字母
'Holle'.isupper()
'holle'.isupper()
True效果如下:
'AAAA'.isupper()
True
a = 'AAAA AAAAA!123都是' ## 包含數(shù)字漢字符號只要無小寫字母都返回Tuer
print(a.isupper())
True
False效果如下:
'Holle'.isupper()
False
'holle'.isupper()
False
''.isupper() # 字符串為空返回False
False
5.字符串isspace使用方法
str.isspace()
如果字符串中只有空白字符且至少有一個字符則返回True,否則返回False
空白字符是指在Unicede字符數(shù)據(jù)庫(參見unicodedata)中主要類別為‘Zs’(“S我怕讓投入,space”)或所屬雙向類為‘WS’‘B’或‘S’的字符
示例:
字符串只有空白字符
' '.isspace()
字符串包含空白字符
'Holle worid'.isspace()
'holle'.isspace()
True效果如下:
' '.isspace() # 字符串為1個或多個空白返回True
True
False效果如下:
'Holle worid'.isspace() # 字符串包含空白返回False
False
'holle'.isspace()
False
''.isspace() # 字符串為空返回False
False
6.字符串lower使用方法
str.lower()
返回原字符串的副本,其中所有區(qū)分大小寫的字符[4]均轉(zhuǎn)換為小寫
示例:
'Holle WorLd'.lower()
'HOLLE123!轉(zhuǎn)化'.lower()
效果如下:
'Holle WorLd'.lower()
'holle world'
'HOLLE123!轉(zhuǎn)化'.lower() ## 包含數(shù)字,符號,漢字時只轉(zhuǎn)化字符為小寫
'holle123!轉(zhuǎn)化'
7.字符串upper使用方法
str.upper()
返回原字符串的副本,其中所有區(qū)分大小寫的字符[4]均轉(zhuǎn)換為大寫。請注意如果s 包含不區(qū)分大小寫的字符或者如果字符的Unicode類別不是“Lu”(Letter,uppercase)而是“Lt”(Letter,tilecase)則s.upper().isupper()有可能為False
示例:
'Holle WorLd'.upper()
'holle123!轉(zhuǎn)化'.upper()
效果如下:
'Holle WorLd'.upper()
'HOLLE WORLD'
'holle123!轉(zhuǎn)化'.upper() ## 包含數(shù)字,符號,漢字時只轉(zhuǎn)化字符為大寫
'HOLLE123!轉(zhuǎn)化'
8.字符串strip使用方法
str.strip([chars])
返回原字符串的副本,移除其中的前導和末尾字符。chars參數(shù)為指定要移除字符的字符串。如果省略或為None 則chars參數(shù)默認移除空白符。實際上chars參數(shù)并非指定耽擱前綴或后綴;而是會移除參數(shù)值的所有組合:
效果如下:
str = ' ====python====='
str.strip('') # 去除左右側(cè)空格,右側(cè)無空格,忽略
' ====python===='
str.strip('=') # 開頭有空格,所以只去除右側(cè)=號
' ====python'
str.strip(' =') # 去除左右前后綴的空格和=號
'python'
str.strip('p n=') # 去除左右前后綴的空格,=,p和n(chars不分先后順序)
'ytho'
str.strip('n') # 嘗試直接去除非前后綴的N,無效,亦不報錯
' ====python===='
9.字符串replace使用方法
str.replace(old,new[,count])
返回原字符串的副本,其中出現(xiàn)的所有子字符串old都將被替換為new。如果給出了可選參數(shù)count,則只替換前count次出現(xiàn)。
效果如下:
下面的變量f是字符串形式的電話
f1 = '010-888-888-888'
請編寫代碼使用字符串方法去掉f中的'-'
f1 = '010-888-888-888'
print(f.replace('-','')) ##將字符串中所有'-'替換為''無
010888888888
print(f.replace('-','~',2)) ##將字符串前2個'-'替換為'~'
010~888~888-888
10.字符串split使用方法
str.split(sep=None,maxsplit=- 1)
返回一個由字符串內(nèi)單詞組成的列表,使用sep作為分割字符串。如果給出一個maxsplit,則最多進行maxsplit次拆分(因此,列表最多會有maxsplit+1個元素)。如果maxsplit未指定或為-1,則不限制拆分次數(shù)(進行所有可能的拆分)
如果給出了sep,則連續(xù)的分隔符不會被組合在一起而是被視為分隔空字符串(例如'1,,2'.split(',') 將返回['1','','2'] )。sep參數(shù)可能由多個字符串組成(例如'1<>2<>3'.split('<>')將返回['1','2','3'])。使用指定的分隔符拆分空字符將返回['']。
效果如下:
'1~2~3~4~5~6'.split('~') ## 根據(jù)符號‘~’進行分割字符串,本示例:分割全部sep分隔符
['1', '2', '3', '4', '5', '6']
'1.2.3.4.5.6'.split('.',maxsplit=1) ## 根據(jù)符號‘.’進行分割字符串,本示例:只分割第一個sep分隔符
['1', '2.3.4.5.6']
'1.2...3.4.5.6'.split('.') ## 根據(jù)符號‘.’進行分割字符串,連續(xù)的分隔符被視為單個空字符串
['1', '2', '', '', '3', '4', '5', '6']
如果sep未指定或者為None,則會應用另一種拆分算法:連續(xù)的空格會被視為單個分隔符,其結(jié)果將不包含開頭或結(jié)尾的空字符串,如果字符串包含前綴或后綴空格的話。因此,使用None拆分空字符串或僅包含空格的字符串將返回[]。
效果如下:
'1 2 3 4 5'.split() ## 未指定sep將連續(xù)空格視為單個分隔符,本示例:分割全部連續(xù)空格
['1', '2', '3', '4', '5']
'1 2 3 4 5'.split(maxsplit=1) ## 未指定sep將連續(xù)空格視為單個分隔符,本示例:只分割第一個分隔符
['1', '2 3 4 5']
' 1 2 3 4 5 '.split() ## 未指定sep將連續(xù)空格視為單個分隔符,且移除前后綴的空格
['1', '2', '3', '4', '5']