我想你想要的是关键词提取,你可以这样做,比如先用词性标签标记每个词,然后在词性标签上应用某种正则表达式,把感兴趣的单词连接成关键词短语。在import nltk

from nltk import pos_tag

from nltk import tokenize

def extract_phrases(my_tree, phrase):

my_phrases = []

if my_tree.label() == phrase:

my_phrases.append(my_tree.copy(True))

for child in my_tree:

if type(child) is nltk.Tree:

list_of_phrases = extract_phrases(child, phrase)

if len(list_of_phrases) > 0:

my_phrases.extend(list_of_phrases)

return my_phrases

def main():

sentences = ["My favorite game is call of duty"]

grammar = "NP: {

?*|*}"

cp = nltk.RegexpParser(grammar)

for x in sentences:

sentence = pos_tag(tokenize.word_tokenize(x))

tree = cp.parse(sentence)

print "\nNoun phrases:"

list_of_noun_phrases = extract_phrases(tree, 'NP')

for phrase in list_of_noun_phrases:

print phrase, "_".join([x[0] for x in phrase.leaves()])

if __name__ == "__main__":

main()

这将输出以下内容:

^{pr2}$

但是,你可以到处玩grammar = "NP: {

?*|*}"

尝试其他类型的表达式,以便根据要连接到一起的单词/标记准确地获得所需的内容。在

如果你感兴趣的话,也可以看看这篇关于关键词/单词提取的非常好的介绍:

python tokenize_model_如何将关键字放入NLTK tokenize中?相关推荐

  1. Python产生100个1—100的随机数放入列表Num中,输出列表中的数,然后将它们排序,并输出排序结果。

    import random #内建函数 Num=[] for i in range(101):Num.append(random.randint(1,100)) #append()将参数添加到列表末尾 ...

  2. R语言使用reshape2包的melt函数将dataframe从宽表到长表(Wide- to long-format)、如果没有指定行标识符号,则所有的字段都会放入variable变量中

    R语言使用reshape2包的melt函数将dataframe从宽表到长表(Wide- to long-format).如果没有指定行标识符号,则所有的字段都会放入variable变量中 目录

  3. Android:如何将Enum放入捆绑包中?

    本文翻译自:Android: How to put an Enum in a Bundle? 如何将Enum对象添加到Android Bundle? #1楼 参考:https://stackoom.c ...

  4. char N2Char(int n)函数:将一个整数转换为字符串,并放入一个字符串中

    //将一个整数转换为字符串,并放入一个字符串中 char N2Char(int n)//一次只能转换一个数 {int i;char c;if ((i = n / 10) != 0)N2Char(i); ...

  5. 打印1-400以内 能同时被5和9 整数的数将这些数放入一个列表中,再输出这个列表

    import java.util.ArrayList;/*** @author silence* 打印1-400以内 能同时被5和9 整数的数将这些数放入一个列表中,再输出这个列表*/ public ...

  6. 集合练习。学生信息包括学号、姓名、出生日期、性别。把N个学生的信息放入一个集合中。可以根据学号,对学生信息进行检索。并可以根据生日进行排序输出。

    集合练习.学生信息包括学号.姓名.出生日期.性别.把N个学生的信息放入一个集合中.可以根据学号,对学生信息进行检索.并可以根据生日进行排序输出. Student.java package Collec ...

  7. 将图片资源放入 html 文件中

    在部分使用 html 文件的场景,有图片需要显示,但是希望是单文件形式存在,可以使用如下方式将图片放入 html 源文件中: <img src="data:image/png;base ...

  8. 将数组a中满足条件的数放入数组b中

    输入当前为数组a[6],各个元素值自行输入: 定义数组b的长度为b[6](未知数组长度时,尽量定义较大的空间): 循环遍历a中的元素是否满足条件,满足时将其放入b中,定义j为数组b中当前元素的位置,不 ...

  9. 设一个学生的信息包括学号、姓名、出生日期和性别等。把n个学生的信息放入一个集合中,可以根据学号对学生信息进行检索,并且可以根据出生日期对学生进行排序输出。

    设一个学生的信息包括学号.姓名.出生日期和性别等.把n个学生的信息放入一个集合中,可以根据学号对学生信息进行检索,并且可以根据出生日期对学生进行排序输出. 要求 对于每个学生的个人信息,可以定义一个类 ...

  10. pr里面怎么加css样式,放入pr剪辑中画面不全怎么办?

    放入pr剪辑中画面不全的解决办法:首先新建项目并更改名称,并导入需要剪辑的视频素材:然后按住快捷键[CTRL+M],并[输出]命令,修改源缩放为[缩放以适合]:最后调整分辨率,点击导出即可. 放入pr ...

最新文章

  1. “invalid index of a 0-dim tensor. Use tensor.item() to convert a 0-dim tensor to a Python”解决办法
  2. 在腾讯云轻量云服务器上搭建mysql数据库
  3. FreeBSD 下的 MySQL 备份方案
  4. percona-toolkit(pt工具)使用总结
  5. 一个有限状态机的C++实现
  6. Borland Delphi7 企业版注册方法
  7. 中景园0.96寸 OLED 显示屏 学习笔记
  8. 从CentOS7默认安装的/home中转移空间到根目录/ - LVM操作简明教程
  9. NEO区块链-DAPP开发直通车-第零篇
  10. PictureSelector 使用
  11. 在网页项目中集成扫码枪设备,实现二维码扫码识别实战
  12. Node-RED中使用JSON数据建立web网站
  13. 如何使用Pytest进行自动化测试
  14. android studio listview点击事件,android如何响应listview上不同按钮点击事件
  15. 基于STM32的二轮自平衡小车
  16. NVIDIA开源DG-Net:用GAN生成高质量行人图像,辅助行人重识别/在线试衣
  17. PhotoImpact amp;Microsoft Access
  18. c# 程序皮肤控件 ---------有点意思!
  19. 源码分析初级《篇一》 为何建议使用LayoutInflater.from而不用View.inflate
  20. 用c语言编写小人走路图片,用flash制作小人走路的简单动画

热门文章

  1. 淘宝店铺运营,店铺访客增加但是浏览量减少这是为什么,应该怎样解决?
  2. 滴滴上市,我的一位前同事身家过亿了!
  3. 王飞跃教授点评:无人车最“靠谱”的应用领域——不是出行
  4. linux7设置广播,中标麒麟Linux7 如何关闭广播消息
  5. 浅谈Web Worker和Service worker
  6. OAuth2.0的refresh token
  7. 阿里云服务器怎么开发票?
  8. Arcesium面试体验|S6(在校园实习)
  9. 微信 css area,微信小程序--手写一个地区选择器(多级联动)
  10. 苹果手机无法验证应用怎么办_App Store 提示“需要验证”无法下载应用怎么办?...