【經驗分享】Python統計長字符串中字符頻次

通過《Python讀取文件內容爲字符串的方法》,我們已經拿到那個很長的字符了。現在我們需要統計這個字符串中,有哪些字符,每個字符分別出現了多少次。

**這裏還要注意:**不管你是爲了Python就業還是興趣愛好,記住:項目開發經驗永遠是核心,爲解決初學者學習上的困難,專門建立的Python學習扣QUN:⑧⑤⑤-④零⑧-⑧⑨③從零基礎開始到Python各領域的項目實戰教程、開發工具與電子書籍。與你分享企業當下對於python人才需求及學好python的高效技巧,不停更新最新教程!點擊加入我們的 python學習圈

方法1:

這個方法相當簡單,掌握《自學是門手藝》第一章就能寫出來。零基礎自學編程,代碼寫成這樣能滿足需求,但它逐個逐個計數,比較笨拙。


rlt = {}
for i in content:
    if i in rlt.keys():
        rlt[i] += 1
    else:
        rlt[i] = 1

方法2:

利用 python 內置函數 count() 來統計每個字符出現的次數,同時通過if i not in rlt.keys():確保每個字符只用統計一次。方法2比1要效率一些。


rlt = {}
for i in content:
    if i not in rlt.keys():
        rlt[i] = content.count(i)


方法3:

數據分析自學小組成員 jeff 代碼是這麼寫的:


rlt = {}
for i in content:
    rlt.setdefault(i,content.count(i))


這裏有一個大家之前沒看到過、或沒用過的方法 setdefault(),你如果去搜python setdefault()拿到它的說明,會發現它一定程度上相當於封裝了方法2。

Python 字典 setdefault() 函數和 get()方法 類似, 如果鍵不存在於字典中,將會添加鍵並將值設爲默認值。

小結

這裏分享一個小常識是,編程世界裏,一門編程語言會自帶很多封裝好、高效、好用的函數、類、庫等等,你根據自己需求去搜,就會找到它們。是的,方法幾乎總是非常多的。

作爲零基礎自學編程的人,你剛起步,你可以不知道 setdefault() 但你所掌握的基礎功,足夠讓你能寫出方法 1 或者 2。

現在你可能會心急,怎麼自己這個不知道,哪個也沒聽說過?——沒關係的,你只要掌握:會拆解、勤搜索、多使用。使用也分兩層,既可以自己多敲代碼,也應該多讀別人的代碼,琢磨同一個需求的不同實現方法,整理成類似這種筆記,然後點滴積累你的牛逼。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章