如何用 Python 中的 NLTK 对中文进行分析和处理
作者&投稿:侯届 (若有异议请与网页底部的电邮联系)
一、NLTK进行分词
用到的函数:
nltk.sent_tokenize(text) #对文本按照句子进行分割
nltk.word_tokenize(sent) #对句子进行分词
二、NLTK进行词性标注
用到的函数:
nltk.pos_tag(tokens)#tokens是句子分词后的结果,同样是句子级的标注
三、NLTK进行命名实体识别(NER)
用到的函数:
nltk.ne_chunk(tags)#tags是句子词性标注后的结果,同样是句子级
上例中,有两个命名实体,一个是Xi,这个应该是PER,被错误识别为GPE了; 另一个事China,被正确识别为GPE。
四、句法分析
nltk没有好的parser,推荐使用stanfordparser
但是nltk有很好的树类,该类用list实现
可以利用stanfordparser的输出构建一棵python的句法树
一、NLTK进行分词
用到的函数:
nltk.sent_tokenize(text) #对文本按照句子进行分割
nltk.word_tokenize(sent) #对句子进行分词
二、NLTK进行词性标注
用到的函数:
nltk.pos_tag(tokens)#tokens是句子分词后的结果,同样是句子级的标注!
用到的函数:
nltk.sent_tokenize(text) #对文本按照句子进行分割
nltk.word_tokenize(sent) #对句子进行分词
二、NLTK进行词性标注
用到的函数:
nltk.pos_tag(tokens)#tokens是句子分词后的结果,同样是句子级的标注
三、NLTK进行命名实体识别(NER)
用到的函数:
nltk.ne_chunk(tags)#tags是句子词性标注后的结果,同样是句子级
上例中,有两个命名实体,一个是Xi,这个应该是PER,被错误识别为GPE了; 另一个事China,被正确识别为GPE。
四、句法分析
nltk没有好的parser,推荐使用stanfordparser
但是nltk有很好的树类,该类用list实现
可以利用stanfordparser的输出构建一棵python的句法树
俎琛罗红: 一、NLTK进行分词 用到的函数: nltk.sent_tokenize(text) #对文本按照句子进行分割 nltk.word_tokenize(sent) #对句子进行分词二、NLTK进行词性标注 用到的函数: nltk.pos_tag(tokens)#tokens是句子分词后的结果,同样是句子级的标注!
杜尔伯特蒙古族自治县14779961968: 怎么在Python里使用UTF - 8编码 - ?
俎琛罗红: 行首定义1 ## -*- coding: utf-8 -*-
杜尔伯特蒙古族自治县14779961968: 如何运行python程序 - ?
俎琛罗红: 1. 使用Python自带的IDLE 在开始-->程序-->Python2.5(视你安装的版本而不同)中找到IDLE(Python GUI), 点击后弹出如下窗体: 在>>>提示符后输入代码,回车,就可以执行此代码. IDLE支持语法高亮,支持自动缩进,支持方法提示,不过...
杜尔伯特蒙古族自治县14779961968: 如何用python读取json里面的值啊 - ?
俎琛罗红: 1、首先需要在桌面新建'json.txt'文件,内容为jsonline格式.2、打开Python开发工具IDLE,新建'json.py'文件,并按照如图所示书写代码.3、F5运行程序,Shell打印出json文本信息.4、这是一次性读取所有内容,如果文件很大的情况,出于性能考虑要分批读取内容,这样要用到yield生成器,改写lines()函数如下,注意yield一定要写在with里,这样才能每次从上一次读取的位置继续读取.5、继续写程序入口函数,这里要注意readlines返回的是一个列表,要读取里面的内容,要再做一个循环来遍历.6、F5运行程序,Shell打印出json文本信息,这个利用生成器方式读取的方式经常处理较大的文件.
杜尔伯特蒙古族自治县14779961968: python中如何从字符串内提取指定的字符 - ?
俎琛罗红: 1、双击打开pycharm开发工具,新建看对应的文件夹. 2、在turtles文件夹上,鼠标右键新建python文件me.py. 3、打开已新建的python文件,定义一个字符串变量s并进行赋值. 4、调用字符串中的方法replace,将do字符串替换成say,并赋值给变量t,打印结果. 5、保存代码并鼠标右键,选择Run me,查看控制台打印结果. 6、返回到代码编辑区,将say修改为空字符,然后保存文件.
杜尔伯特蒙古族自治县14779961968: 如何进行Python字符串操作? - ?
俎琛罗红: 它合理地结合了高性能与使得编写程序简单有趣的特色,下面讲述python字符串操作流程.要使用string的方法要先import,但后来由于众多的python使用者的建议,从python2.0开始, string方法改为用S.method()的形式调用,只要S是一个字...
杜尔伯特蒙古族自治县14779961968: 如何在Python中调用C++代码或Java包中的函数 - ?
俎琛罗红: 可以用Python的扩展来实现.可参考Extending Python with C or C++.Python本来是C实现的,封装二进制兼容的C++是很容易的.Java的话得通过JNI来实现,就是说在Python扩展里用C调用Java.另外,你也可以写一个TCP服务来包装C++/Java的接口,通过网络来调用,这样更通用.
杜尔伯特蒙古族自治县14779961968: 如何用python实现随机抽取 - ?
俎琛罗红: 物信息、统计、网页制作、计算等多个领域都体现出了强大的功能.python和其他脚本语言如java、R、Perl 一样,都可以直接在命令行里运行脚本程序.工具/原料 python;CMD命令行;windows操作系统 方法/步骤 1、首先下载安装python,建...
杜尔伯特蒙古族自治县14779961968: 如何运行Python程序的方法 - ?
俎琛罗红: 在linux和mac系统里自带python,在copy终端里输入python -V查看python版本,输入“python”运行python 2.X版本,“python3”运行python 3.x版本.运行.py程序,切换到程序所在目录,2113“python或python3 xxxx.py”即可执行.在windows...
杜尔伯特蒙古族自治县14779961968: python3中的print("\t",end="")的作用是什么?怎么用? - ?
俎琛罗红: \t 代表的是制表符 end="" 表示打印对象以什么结尾 ,默认 是 \n 也就是换行 在python2中直接 print("\t\n")就行了