python分析qq聊天记录汉字频率

import re

# -*- coding: utf-8 -*-
with open('C:\\Users\\BIMK\\Desktop\\1.txt','r+',encoding='UTF-8') as f:#读qq聊天记录的导出文件
    a=f.read()
a=re.sub('(\d{4}-\d{2}-\d{2}.{9})','',a)#删除日期信息
a=re.sub('(\[.{2}\])','',a)#删除表情图片
a=re.sub('(鉏飞祥)','',a)
a=re.sub('(晴天)','',a)#删除昵称
a=re.findall('[\u4e00-\u9fa5]',a)#提取中文
s={}
for i in a:#构建统计字典
    if i not in s:
        s[i]=1
    else:
        s[i]=s[i]+1
s=sorted(s.items(),key = lambda x:x[1],reverse = True)#排序
st=''
for i in s:
    st=st+i[0]+' '+str(i[1])+'\n'
with open('C:\\Users\\BIMK\\Desktop\\2.txt','w',encoding='UTF-8') as f:#写文件
    f.write(st)

你可能感兴趣的:(小程序)