Python count()函數(shù)實例詳解
count() 是Python的內(nèi)置函數(shù),可以「統(tǒng)計」字符串里指定「字符」或指定字符串出現(xiàn)的「次數(shù)」。
語法
String.count( str, start, end )
參數(shù)
- str :(必選)指定字符或字符串
- start :(可選,整型)開始的索引,默認(rèn)0
- end :(可選,整型)結(jié)束的索引,默認(rèn)最后一個位置
返回值
- int類型,返回出現(xiàn)的次數(shù)
實例:統(tǒng)計字符 ‘a’ 在字符串 ‘abcabcabc’ 中出現(xiàn)的次數(shù)
print('abcabcabc'.count('a'))
輸出:
3
在字符串中搜索時,搜索的內(nèi)容只能是「字符串類型」,否則會報錯 TypeError: must be str
1、指定搜索位置
start 和 end 參數(shù)可以設(shè)置搜索的「范圍」,含頭不含尾 [start, end)
start 參數(shù)必須是「整型」或「不設(shè)置」,默認(rèn)值是0end 參數(shù)必須是「整型」或「不設(shè)置」,默認(rèn)值是 len(string),字符串的長度,也就是最后一個位置
count() 的參數(shù)不通過參數(shù)名來指定:
- 如果只給「一個參數(shù)」,就默認(rèn)賦值給str參數(shù)
- 如果只給「兩個參數(shù)」,就按順序賦值給str 和 start 參數(shù)
- 如果給了「三個參數(shù)」,就按順序賦值給str 、start、end參數(shù)
實例:從第3個字符開始,搜索字符 ‘a’ 在字符串 ‘abcabcabc’ 中出現(xiàn)的次數(shù)
print('abcabcabc'.count('a', 3))
輸出:
2
實例:在字符串的3~6位置,搜索字符 ‘a’ 在字符串 ‘abcabcabc’ 中出現(xiàn)的次數(shù)
print('abcabcabc'.count('a', 3, 6))
輸出:
1
2、參數(shù)為負(fù)數(shù)
start 和 end 參數(shù)可以為「負(fù)數(shù)」,同樣含頭不含尾[-start, -end)
start 為負(fù)數(shù)時,意思是從「右邊」第幾個位置「開始」,這個位置不是索引,從1開始計算。
print('aaabbbccc'.count('a', -6)) print('aaabbbccc'.count('a', -7))
輸出:
01
end 為負(fù)數(shù)時,意思是從「右邊」第幾個位置「結(jié)束」,同樣是從1開始計算。
比如下面這個案例,設(shè)置范圍從右邊第6個開始,到右邊第1個結(jié)束
print('aaabbbccc'.count('c', -6, -1))
輸出:
2
當(dāng)負(fù)數(shù)超過字符串的「長度」時,會從0開始計算。
比如字符串只有8個字符,但start 參數(shù)的值為-10,count()就會讓它變得 “不生效”。
print('aaabbbccc'.count('c', -10)) print('aaabbbccc'.count('c'))
輸出:
33
3、列表的count()
列表也有count() ,可以統(tǒng)計指定「元素」在列表中出現(xiàn)的「次數(shù)」,雖然函數(shù)名字一樣,但用法卻不同
語法
list.count( element )
參數(shù)
- element:需要統(tǒng)計的元素
返回值
- int類型,返回元素出現(xiàn)的次數(shù)
實例:統(tǒng)計元素 1 在列表中出現(xiàn)的次數(shù)
print([1, 2, 1, 2].count(1))
輸出:
2
4、元祖的count()
元組相當(dāng)于只讀列表,元組的 count() 和 列表的 count() 用法相同
語法
tuple.count( element )
參數(shù)
- element:需要統(tǒng)計的元素
返回值
- int類型,返回元素出現(xiàn)的次數(shù)
實例:統(tǒng)計元素 1 在元組中出現(xiàn)的次數(shù)
print((1, 2, 1, 2).count(1))
輸出:
2
5、其他數(shù)據(jù)類型的count()
不同數(shù)據(jù)類型的 count() 語法是不一樣的:
字符串、字節(jié)串、字節(jié)數(shù)組的count()可以指定開始和結(jié)束的位置;列表、元組、等差數(shù)列的count()只能搜索指定的元素。
- 字符串:
string.count( str, start, end )
- 字節(jié)串:
bytes.count( str, start, end )
- 字節(jié)數(shù)組:
bytearray.count( str, start, end )
- 列表:
list.count( element )
- 元組:
tuple.count( element )
- 等差數(shù)列:
range.count( element )
6、布爾類型
布爾類型是特殊的,True可以匹配到1,F(xiàn)alse可以匹配到0,具體的可以參考以下案例:
print((True, False).count(True)) print((True, False).count(1)) print((True, False).count(0))
輸出:
1
1
1
到此這篇關(guān)于Python count()函數(shù)詳解的文章就介紹到這了,更多相關(guān)Python count()函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于Python dict存中文字符dumps()的問題
這篇文章主要介紹了關(guān)于Python dict存中文字符dumps()的問題,本文給大家分享問題及解決方案,給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-10-10Python 使用threading+Queue實現(xiàn)線程池示例
今天小編就為大家分享一篇Python 使用threading+Queue實現(xiàn)線程池示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12python實戰(zhàn)之利用pygame實現(xiàn)貪吃蛇游戲(一)
這篇文章主要介紹了python實戰(zhàn)之利用pygame實現(xiàn)貪吃蛇游戲,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python的小伙伴們有很好的幫助喲,需要的朋友可以參考下2021-05-05educoder之Python數(shù)值計算庫Numpy圖像處理詳解
這篇文章主要為大家介紹了educoder之Python數(shù)值計算庫Numpy圖像處理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04