通過《Python讀取檔案内容為字元串的方法》,我們已經拿到那個很長的字元了。現在我們需要統計這個字元串中,有哪些字元,每個字元分别出現了多少次。
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbwxCdh1mcvZ2LcV2Zh1Wa9M3clN2byBXLzN3btg3P3p1dw1GT1UEVadXTE1EbopmWtJFVaxGaE90MwM1T1kFVPVTWq1Ue4k3YsR2VZRHbyg1aGJjYzJEWkZHOXFWdVhUY6VzVZBHctxkeWJjWoFzVhRXUXlld4d0YxkTeMZTTINGMShUYvwlbj5yZtlmbkN3YuQnclZnbvN2Ztl2Lc9CX6MHc0RHaiojIsJye.jpg)
**這裡還要注意:**不管你是為了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。
現在你可能會心急,怎麼自己這個不知道,哪個也沒聽說過?——沒關系的,你隻要掌握:會拆解、勤搜尋、多使用。使用也分兩層,既可以自己多敲代碼,也應該多讀别人的代碼,琢磨同一個需求的不同實作方法,整理成類似這種筆記,然後點滴積累你的牛逼。