看了一个教程:https://www.cnblogs.com/wkfvawl/p/9487165.html

有些不懂的地方自己查阅了一下

  1. 键值的添加,获得文件中相同字符出现的次数, counts = {},counts.get(word,0)

    一个常用的统计词频的方法
txt = "a b c d a b c a b a e"
words = txt.split() #将每个字符按空格分开
print(words) #输出示例
counts = {} #新建一个字典
for word in words:
counts[word] = counts.get(word,0) + 1 #能够获得键对应的值
print(list(counts.items()))
  1. Python Dictionary items()方法

    字典的一个函数,以列表返回可遍历的(键,值)元组元素
s = "双儿 洪七公 赵敏 赵敏 逍遥子 鳌拜 殷天正 金轮法王 乔峰"
ls=s.split()
counts={}
for word in ls:
counts[word]=counts.get(word,0)+1
item=counts.items()
print("字典类型:",counts)
print("元组类型:",item)

出来的结果不是list类型,需要强制转化为list类型。

  1. 元素排序:items.sort[key=lambda x:x[1],reverse=True)

    key=lambda x: x[1]lambda是一个隐函数,在这里可以不用管它,记得有这个就可以

    后面的x: x[1] 为对前面的对象中的第二维数据(即value)的值进行排序。

  2. 格式化输出print("{0:<5}{1:>5}".format(word, count))

    print ("{0:<10}{1:>5}".format(word, count))

    这个是format方法的格式控制。

{<参数序号>:<填充符号><对齐><宽度><,>< . 精度 ><类型>}
< : 左对齐
> :右对齐
^ : 居中对
< , > 表示数字的千位分隔符
整数类型:b, c, d, o, x, X
浮点数类型:e, E, f, %
>>>"{} {}".format("hello", "world")    # 不设置指定位置,按默认顺序
'hello world' >>> "{0} {1}".format("hello", "world") # 设置指定位置
'hello world' >>> "{1} {0} {1}".format("hello", "world") # 设置指定位置
'world hello world'
import jieba
txt = open("三国演义.txt", "r", encoding='utf-8').read()
words = jieba.lcut(txt)
counts = {} #通过键值对的形式存储词语及其出现次数 for word in words:
if len(word) == 1:
continue
else:
counts[word] = counts.get(word, 0) + 1 #有word时返回其值,+1能够累计次数
#参考https://blog.csdn.net/weixin_42800007/article/details/82024108 items = list(counts.items())
print(type(items[5]))
items.sort(key = lambda x: x[1], reverse = True)
#key = lambda隐函数;x:x[1]按第二维数据排序(value) for i in range(15):
word, count = items[i]
print("{0:<5}{1:>5}".format(word, count))

【Python】文本包jieba使用的更多相关文章

  1. 机器学习常用Python扩展包

    在Ubuntu下安装Python模块通常有3种方法:1)使用apt-get:2)使用pip命令(推荐);3)easy_instal 可安装方法参考:[转]linux和windows下安装python集 ...

  2. python库包大全(转)

    python 库资源大全 转自: Python 资源大全中文版 环境管理 管理 Python 版本和环境的工具 p:非常简单的交互式 python 版本管理工具.官网 pyenv:简单的 Python ...

  3. Python分词工具——jieba

    jieba简介 python在数据挖掘领域的使用越来越广泛.想要使用python做文本分析,分词是必不可少的一个环节在python的第三方包里,jieba应该算得上是分词领域的佼佼者. GitHub地 ...

  4. 转]python 结巴分词(jieba)学习

    原文  http://www.gowhich.com/blog/147 主题 中文分词Python 源码下载的地址:https://github.com/fxsjy/jieba 演示地址:http:/ ...

  5. python第三方库------jieba库(中文分词)

    jieba“结巴”中文分词:做最好的 Python 中文分词组件 github:https://github.com/fxsjy/jieba 特点支持三种分词模式: 精确模式,试图将句子最精确地切开, ...

  6. python 结巴分词(jieba)详解

    文章转载:http://blog.csdn.net/xiaoxiangzi222/article/details/53483931 jieba “结巴”中文分词:做最好的 Python 中文分词组件 ...

  7. LFD,非官方的Windows二进制文件的Python扩展包

    LFD,非官方的Windows二进制文件的Python扩展包 LFD,非官方版本.32和64位.Windows.二进制文件.科学开源.Python扩展包 克里斯托夫·戈尔克(by Christoph ...

  8. Python第三方库jieba(中文分词)入门与进阶(官方文档)

    jieba "结巴"中文分词:做最好的 Python 中文分词组件 github:https://github.com/fxsjy/jieba 特点 支持三种分词模式: 精确模式, ...

  9. Python文本数据分析与处理

    Python文本数据分析与处理(新闻摘要) 分词 使用jieba分词, 注意lcut只接受字符串 过滤停用词 TF-IDF得到摘要信息或者使用LDA主题模型 TF-IDF有两种 jieba.analy ...

随机推荐

  1. 暑假算法练习Day5

    咕咕了好几天哈哈哈哈,因为这几天在忙一些其他事(bushi ,好吧其实就是自己太懒啦,从今天开始继续每天的算法练习 1010 一元多项式求导 (25 分) 设计函数求一元多项式的导数.(注:\(x^n ...

  2. [noi1994]海盗

    令$a_{i,j}(j\le i)$表示第i个人的方案中给第j个人$a_{i,j}$的钱,有以下性质: 1.如果第j个人一定同意(否则就会死)第i个人的方案,那么$a_{i,j}=0$(容易发现一定同 ...

  3. Assassin暗杀者-自用短小精悍的webshell管理工具分享

    Assassin Assassin是一款精简的基于命令行的webshell管理工具,它有着多种payload发送方式和编码方式,以及精简的payload代码,使得它成为隐蔽的暗杀者,难以被很好的防御. ...

  4. redis可以设置过期key回调实现延时队列

    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...

  5. Vulnhub-Empire: LupinOne题解

    Vulnhub-Empire: LupinOne题解 本靶机为Vulnhub上Empire系列之LupinOne,地址:EMPIRE: LUPINONE 扫描与发现 利用arp-scan命令扫描靶机I ...

  6. git连接远程仓库

    1. 连接远程仓库 1.1. 创建仓库 在连接远程仓库之前,得先要确定你有一个远程仓库,到GitHub官网搞一个账户. 点右上角的加号然后"New repository"输入一个仓 ...

  7. 简单聊下.NET6 Minimal API的使用方式

    前言 随着.Net6的发布,微软也改进了对之前ASP.NET Core构建方式,使用了新的Minimal API模式.之前默认的方式是需要在Startup中注册IOC和中间件相关,但是在Minimal ...

  8. 【贾志豪NOIP模拟题】慰问员工 cheer 【最小生成树】【对边权值的一些处理】

    Description LongDD 变得非常懒, 他不想再继续维护供员工之间供通行的道路. 道路被用来连接 N(5 <= N <= 10,000)个房子, 房子被连续地编号为 1..N. ...

  9. Codeforces 286E - Ladies' Shop(FFT)

    Codeforces 题面传送门 & 洛谷题面传送门 好久没刷过 FFT/NTT 的题了,写篇题解罢( 首先考虑什么样的集合 \(T\) 符合条件.我们考察一个 \(x\in S\),根据题意 ...

  10. vector.erase();vector.clear();map.erase();

    vector::erase()返回下一个iter: STL中的源码: //清除[first, last)中的所有元素 iterator erase(iterator first, iterator l ...