python进行分词及统计词频

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/python
# -*- coding: UTF-8 -*-
#分词统计词频
import jieba
import re
from collections import Counter
content=""
filename=r"../data/commentText.txt";
result = "result_com.txt"
r='[0-9\s+\.\!\/_,$%^*()?;;:-【】+\"\']+|[+——!,;:。?、 ~@#¥%……&*()]+'
with open(filename,'r',encoding='utf-8') as fr:
    print("ss")
    content=re.sub(r," ",fr.read())
    #re.sub(pattern, repl, string, count=0, flags=0)
    # pattern:表示正则表达式中的模式字符串;
    # repl:被替换的字符串(既可以是字符串,也可以是函数);
    # string:要被处理的,要被替换的字符串;
    # count:匹配的次数, 默认是全部替换
    # flags:具体用处不详
    data=jieba.cut(content,cut_all=False)
 
data=dict(Counter(data))#dict() 函数用于创建一个字典。Counter 是实现的 dict 的一个子类,可以用来方便地计数。
with open(result,'w',encoding="utf-8")as fw:
     for k,v in data.items():
         if(len(k)>1):
            fw.write(k)
            fw.write("\t%d\n"%v)

  语言:Python3.7 包:jieba counter re

  出错内容:由于没有在写入文件中规定其编码方式,导致为16进制写入,设置编码方式即可

posted @   天明宝  阅读(2882)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示