python讀取TXT文字內容的字個數和每個字出現的個數
阿新 • • 發佈:2018-11-19
python讀取TXT文字內容的字個數和每個字出現的個數
原始碼
# 開啟檔案 fr=open('xyj.txt','r', encoding='UTF-8') # 讀取檔案所有行 content=fr.readlines() contentLines='' characers=[] stat={} # 依次迭代所有行 for line in content: # 去除空格 line=line.strip() if len(line)==0: continue contentLines = contentLines + line # print(line) # 統計每一字出現的個數 for x in range(0,len(line)): # 如果字元第一次出現 加入到字元陣列中 if not line[x] in characers: characers.append(line[x]) # 如果是字元第一次出現 加入到字典中 if line[x] not in stat: stat[line[x]]=1 #出現次數加一 stat[line[x]]+=1 # 對字典進行倒數排序 從高到低 其中e表示dict.items()中的一個元素, # e[1]則表示按 值排序如果把e[1]改成e[0],那麼則是按鍵排序, # reverse=False可以省略,預設為升序排列 stat=sorted(stat.items(), key=lambda e:e[1], reverse=True) # 列印stat 每個字和其出現的次數 stat經過排序後變成二元組 # print(stat) # for i in range(len(stat)): # print(stat[i][0],stat[i][1]) for i in stat: print(i[0],i[1]) print('全文共有%d個字'%len(contentLines)) print('一共有%d個不同的字'%len(characers)) fr.close()