本篇內(nèi)容介紹了“python常用字符串函數(shù)有哪些”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
為資溪等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及資溪網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站建設(shè)、資溪網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
1.數(shù)組
a = [1,2,3,5,6,7,8,9,0]print(a)#如何創(chuàng)建一個listL1 = []print(type(L1))print(L1) L2 = [1,2,0,3,0,5,6,7,8,9,0]print(L2 )#增L2.append(11) #插入到最后的一個值print(L2)#添加到指定位置,insert(插到第幾個,插入什么數(shù)據(jù)) 其他數(shù)據(jù)會向右移一個位置#list中每個值,他們所在的位置叫做下標(biāo),這個id是從左到右從0開始L2.insert(2,13)print(L2)#刪#remove刪除的時(shí)候是通過值刪除的,從左到右刪除找到的第一個值#若值不存在,報(bào)異常L2.remove(0)print("=========")print(L2)print(L2.pop(4))print(L2)#改L2[1] = '111'#查print(L2[1])print(L2[3])print(L2[6])#遍歷列表數(shù)據(jù)查詢for i in L2:print("當(dāng)前元素:",i)
2.數(shù)組常用函數(shù)
len(list)
列表元素個數(shù)
max(list)
返回列表元素最大值
min(list)
返回列表元素最小值
list(seq)
將元組轉(zhuǎn)換為列表
list.append(obj)
在列表末尾添加新的對象
list.count(obj)
統(tǒng)計(jì)某個元素在列表中出現(xiàn)的次數(shù)
list.extend(seq)
在列表末尾一次性追加另一個序列中的多個值(用新列表擴(kuò)展原來的列表)
list.index(obj)
從列表中找出某個值第一個匹配項(xiàng)的索引位置
list.insert(index, obj)
將對象插入列表
list.pop([index=-1])
移除列表中的一個元素(默認(rèn)最后一個元素),并且返回該元素的值
list.remove(obj)
移除列表中某個值的第一個匹配項(xiàng)
list.reverse()
反向列表中元素
list.sort( key=None, reverse=False)
對原列表進(jìn)行排序
list.clear()
清空列表
list.copy()
復(fù)制列表
3.字符串常用函數(shù)
capitalize()
將字符串的第一個字符轉(zhuǎn)換為大寫
center(width, fillchar)
返回一個指定的寬度 width 居中的字符串,fillchar 為填充的字符,默認(rèn)為空格。
count(str, beg= 0,end=len(string))
返回 str 在 string 里面出現(xiàn)的次數(shù),如果 beg 或者 end 指定則返回指定范圍內(nèi) str 出現(xiàn)的次數(shù)
bytes.decode(encoding="utf-8", errors="strict")
Python3 中沒有 decode 方法,但我們可以使用 bytes 對象的 decode() 方法來解碼給定的 bytes 對象,這個 bytes 對象可以由 str.encode() 來編碼返回。
encode(encoding='UTF-8',errors='strict')
以 encoding 指定的編碼格式編碼字符串,如果出錯默認(rèn)報(bào)一個ValueError 的異常,除非 errors 指定的是'ignore'或者'replace'
endswith(suffix, beg=0, end=len(string))
檢查字符串是否以 obj 結(jié)束,如果beg 或者 end 指定則檢查指定的范圍內(nèi)是否以 obj 結(jié)束,如果是,返回 True,否則返回 False.
expandtabs(tabsize=8)
把字符串 string 中的 tab 符號轉(zhuǎn)為空格,tab 符號默認(rèn)的空格數(shù)是 8 。
find(str, beg=0, end=len(string))
檢測 str 是否包含在字符串中,如果指定范圍 beg 和 end ,則檢查是否包含在指定范圍內(nèi),如果包含返回開始的索引值,否則返回-1
index(str, beg=0, end=len(string))
跟find()方法一樣,只不過如果str不在字符串中會報(bào)一個異常。
isalnum()
如果字符串至少有一個字符并且所有字符都是字母或數(shù)字則返 回 True,否則返回 False
isalpha()
如果字符串至少有一個字符并且所有字符都是字母或中文字則返回 True, 否則返回 False
isdigit()
如果字符串只包含數(shù)字則返回 True 否則返回 False..
islower()
如果字符串中包含至少一個區(qū)分大小寫的字符,并且所有這些(區(qū)分大小寫的)字符都是小寫,則返回 True,否則返回 False
isnumeric()
如果字符串中只包含數(shù)字字符,則返回 True,否則返回 False
isspace()
如果字符串中只包含空白,則返回 True,否則返回 False.
istitle()
如果字符串是標(biāo)題化的(見 title())則返回 True,否則返回 False
isupper()
如果字符串中包含至少一個區(qū)分大小寫的字符,并且所有這些(區(qū)分大小寫的)字符都是大寫,則返回 True,否則返回 False
join(seq)
以指定字符串作為分隔符,將 seq 中所有的元素(的字符串表示)合并為一個新的字符串
len(string)
返回字符串長度
ljust(width[, fillchar])
返回一個原字符串左對齊,并使用 fillchar 填充至長度 width 的新字符串,fillchar 默認(rèn)為空格。
lower()
轉(zhuǎn)換字符串中所有大寫字符為小寫.
lstrip()
截掉字符串左邊的空格或指定字符。
maketrans()
創(chuàng)建字符映射的轉(zhuǎn)換表,對于接受兩個參數(shù)的最簡單的調(diào)用方式,第一個參數(shù)是字符串,表示需要轉(zhuǎn)換的字符,第二個參數(shù)也是字符串表示轉(zhuǎn)換的目標(biāo)。
max(str)
返回字符串 str 中最大的字母。
min(str)
返回字符串 str 中最小的字母。
replace(old, new [, max])
把 將字符串中的 old 替換成 new,如果 max 指定,則替換不超過 max 次。
rfind(str, beg=0,end=len(string))
類似于 find()函數(shù),不過是從右邊開始查找.
rindex( str, beg=0, end=len(string))
類似于 index(),不過是從右邊開始.
rjust(width,[, fillchar])
返回一個原字符串右對齊,并使用fillchar(默認(rèn)空格)填充至長度 width 的新字符串
rstrip()
刪除字符串字符串末尾的空格.
split(str="", num=string.count(str))
以 str 為分隔符截取字符串,如果 num 有指定值,則僅截取 num+1 個子字符串
splitlines([keepends])
按照行('\r', '\r\n', \n')分隔,返回一個包含各行作為元素的列表,如果參數(shù) keepends 為 False,不包含換行符,如果為 True,則保留換行符。
startswith(substr, beg=0,end=len(string))
檢查字符串是否是以指定子字符串 substr 開頭, 是則返回 True,否則返回 False。如果beg 和 end 指定值,則在指定范圍內(nèi)檢查。
strip([chars])
在字符串上執(zhí)行 lstrip()和 rstrip()
swapcase()
將字符串中大寫轉(zhuǎn)換為小寫,小寫轉(zhuǎn)換為大寫
title()
返回"標(biāo)題化"的字符串,就是說所有單詞都是以大寫開始,其余字母均為小寫(見 istitle())
translate(table, deletechars="")
根據(jù) str 給出的表(包含 256 個字符)轉(zhuǎn)換 string 的字符, 要過濾掉的字符放到 deletechars 參數(shù)中
upper()
轉(zhuǎn)換字符串中的小寫字母為大寫
zfill (width)
返回長度為 width 的字符串,原字符串右對齊,前面填充0
isdecimal()
檢查字符串是否只包含十進(jìn)制字符,如果是返回 true,否則返回 false。
'1.字符串常量集合' import string print(string.ascii_uppercase) #大寫字母 print(string.ascii_lowercase) #小寫字母 print(string.ascii_letters) #大小寫字母 print(string.digits) #數(shù)字 print(string.punctuation) #符號集合 print(string.printable) #可輸入字符合集,包括大小寫字母數(shù)字和符號的合集 '2.字符串大小寫轉(zhuǎn)換 5個' str='hello,woRld!' print(str.capitalize()) #僅首字母大寫,Hello,world! print(str.title()) #僅每個單詞首字母大寫,Hello,World! print(str.upper()) #每個字母都大寫,HELLO,WORLD! print(str.lower()) #每個字母都小寫,hello,world! print(str.swapcase()) #大小寫互換,HELLO,WOrLD! '3.字符串內(nèi)容判斷 10個' num='123' alp='asd' num_alp='a1s2d' printable='`~!@#$%' print(num.isdigit()) #字符串中的字符是否都是數(shù)字,True print(alp.isalpha()) #字符串中的字符是否都是字母,True print(num_alp.isalnum()) #字符串中的字符是否都是字母和數(shù)字,True print(printable.isprintable()) #字符串中的字符是否都是可輸入字符,True print(num.isnumeric()) #字符串中的字符是否都是數(shù)字,True print(alp.islower()) #字符串中的字符是否都是小寫字母,True print(num_alp.isupper()) #字符串中的字符是否都是大寫字母,F(xiàn)alse print(alp.istitle()) #字符串中的字符是形如標(biāo)題Hello World,F(xiàn)alse print(' '.isspace()) #字符串中的字符是否都是空格,True print('哈'.isascii()) #字符串中的字符是否可用ascll碼表示,漢字是Unicode編碼表示的所以是False '4.字符串填充' str='Welcome' print(str.center(13,'*'))#***Welcome*** print(str.ljust(10,'+')) #Welcome+++ print(str.rjust(10,'-')) #---Welcome print(str.zfill(10)) #000Welcome print('-100'.zfill(10)) #-000000100 print('+100'.zfill(10)) #+000000100 '5.字符串搜索' str='awasdhiwhhihuasd~hjdsasdihfi' print(str.index('asd')) #str中有子字符串時(shí)回返回收自費(fèi)所在索引值,若不存在則報(bào)錯 try: print(str.index('aes')) except ValueError as v: print(v) print(str.find('asd')) #str中有子字符串時(shí)會返回首字母所在索引值,若不存在則返回-1 print(str.find('aes')) print(str.count('asd')) #返回字符串中包含的子串個數(shù) print(str.count('aes')) #不存在則返回0 '6.字符串替換' str='hello,world!' print(str.replace('world','python')) #生成替換字符的復(fù)制,hello,python!原字符串str未改變 print(str) #hello,world! str='awasdhiwhhihuasd~hjdsasdihfi' print(str.replace('asd','ASD',2)) #awASDhiwhhihuASD~hjdsasdihfi '7.字符串添加' #join() 方法用于將序列中的元素以指定的字符連接生成一個新的字符串 #用法:str.join(sequence),sequence包括字符串、列表、元祖、集合及字典(字典僅連接key),其中列表、元祖和集合的元素都必須是字符串,否則會報(bào)錯 lis=['I','am','IronMan!'] print(' '.join(lis)) #I am IronMan! print('*'.join({'1','2'})) print('-'.join('ABCD')) print('+'.join(('a','b','c'))) print('~'.join({'a':1,'b':2})) '8.字符串修剪' b="qq-qeasdzxcrtqwe----" print(b.strip('q')) #-qeasdzxcrtqwe----
'9.字符串切割' b="this is string example" print(b.split(' ')) #以空格為分割符進(jìn)行切片 ['this', 'is', 'string']
'9.字符串切割' ''' partition(sep)對給定字符串進(jìn)行切割,切割成三部分 首先搜索到字符串sep,將sep之前的部分為一部分,sep本身作為一部分,剩下作為一部分 partition()與rpartition()之間十分相似,主要不同體現(xiàn)在當(dāng)字符串中沒有指定sep時(shí) partition()分為三部分,字符串、空白、空白 rpartition()分為三部分,空白、空白、字符串''' test='haoiugdsgfasdhreiuufufg' print(test.partition('asd')) #('haoiugdsgf', 'asd', 'hreiuufufg') print(test.partition(' nji'))#('haoiugdsgfasdhreiuufufg', '', '') print(test.rpartition('njj'))#('', '', 'haoiugdsgfasdhreiuufufg')
4.格式化字符串
格式化字符串可以很好的幫助我們把我們想要的輸出出來,用起來也很方便,主要有下面幾種形式。
1 2 3 4 5 6 7 |
|
上面輸出結(jié)果都是:hello,tom,my name is sir!!
5。字符串大小寫問題
關(guān)于英文字符串的大小寫轉(zhuǎn)換問題,可以通過下面幾個函數(shù)實(shí)現(xiàn)
1 2 3 4 5 6 7 8 9 |
|
輸出結(jié)果一次為:
Hello,Zhong Yuan Gong!!
HELLO,ZHONG YUAN GONG!!
hello,zhong yuan gong!!
Hello,zhong yuan gong!!
字符串切片
1 2 3 4 5 6 7 |
|
輸出結(jié)果如下:
3456
89
987654321
6.刪除字符串中的空格
1 2 3 4 5 6 7 8 9 |
|
輸出依次為:
hello world !!!
hello world !!!
hello world !!!
helloworld!!!
注意:這里不要把strip函數(shù)和split函數(shù)搞混了,前者是刪除字符串中指定的字符,默認(rèn)為空格,后者是用指定的字符分割字符串,默認(rèn)也是空格
0x05:更改字符串的編碼
有時(shí)候我們在進(jìn)行文件存儲是,會出現(xiàn)亂碼,這時(shí)候,我們改一下編碼就OK了。方式如下
1 2 3 |
|
“python常用字符串函數(shù)有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!