jieba的基本使用

jieba的使用

  • 使用jieba进行中文分词
import jieba

#基本分词函数
# jieba.cut/lcut(String targetstring,
#                boolean cut_all:是否使用全分模式,默认使用精确分词
#                boolean  HMM:用不用HMM模型.默认用)
#返回值类型:#generator/list
list1=jieba.cut("我李华是一只快乐的字符串")
str="/".join(list1)
print(str)

#字典相关:
#自定义字典的格式: 词语 词频(可省略) 词性(可省略)
#载入词典:
#void jieba.load_userdict(String file_name)
#动态修改词典:
#add_word(word, freq=None, tag=None) 和 del_word(word)和suggest_freq(tupple segment, tune=True)
jieba.add_word("李华")
jieba.del_word("字符串")
list1=jieba.cut("我李华是一只快乐的字符串")
str="/".join(list1)
print(str)
  • 关键词提取
import jieba

# 关键词提取
# 有两个函数,但参数列表相同:
#     String sentence:为待提取的文本
#     int topK:为返回几个 TF/IDF 权重最大的关键词,默认值为 20
#     boolean withWeight:是否一并返回关键词权重值,默认值为 False
#     tupple allowPOS:仅包括指定词性的词,默认值为空
#                      但是第一个函数默认过滤词性(allowPOS=('ns', 'n', 'vn', 'v'))
# 这两个函数名为:
# jieba.analyse.extract_tags和jieba.analyse.textrank
#返回值都为list,不管后面的参数怎么样
import jieba.analyse as analyse
what=analyse.extract_tags("我是李华,我是一只快乐的字符串,哈哈,再说一遍,我李华是一只快乐的字符串",topK=4,withWeight=True)
print(what)
  • 获得词语信息(原文位置,词性)
import jieba
# 使用 jieba.tokenize 方法可以返回词语在原文的起止位置
# 注意:有人说输入参数只接受 unicode,但反正我的oython3不需要
#返回值:此方法返回一个generator,在generator内部是tupple,tupple的格式为(词语,起始位置,终止位置)
#拓展:重复的词会被看成不同的词放到不同的元组内
str='上海三四上海'
#target=str.encode('unicode-escape').decode(),不用管它
result = jieba.tokenize(str, mode='search')
for tk in result:
    print(type(result))
    print("word: {0} \t\t start: {1} \t\t end: {2}".format(tk[0],tk[1],tk[2]))
    print(type(tk))

下面是词性标注:

#jieba.posseg.POSTokenizer(tokenizer=None) 新建自定义分词器,tokenizer 参数可指定内部使用的 jieba.Tokenizer 分词器。jieba.posseg.dt 为默认词性标注分词器。
#我看了好几个博客一讲到词性标注就来这么一句,肯定是照抄七月在线的课件的,像我就看不懂这句话

#词性标注用的方法是jiaba.posseg.cut
#返回一个聚合体,外层是generator,内层类型是jieba.posseg.pair
#对于迭代器generator,用for循环肯定没问题
#至于jieba.posseg.pair,它有两个属性word和flag,通过'.'来访问
import jieba.posseg as p
g = p.cut("我真想过过儿过过的生活")
for x in g:
    print('%s %s' % (x.word, x.flag))
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值