欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

如何用Python找出英语和汉语中特定词性的单词

时间:2023-08-18

在绘制词云图时,我们有时需要找到特定词性的单词,便云图显示更加精准,本文通过jieba(结巴)库中的posseg和nltk中pos_tag分别对汉英两种字符进行分词、标准,再利用列表表达式进行特定词性单词的提取,演示如下:

Python批量获取英汉语篇中特定词性的单词

一、对于英语中的特定词性单词进行提取

首先引入nltk中的word_tokenize和pos_tag,对于需要操作字符先分词,再标注,然后再提取。代码如下:

from nltk import pos_tag,word_tokenizes="Where do you from? Do you like English?"text = word_tokenize(s) #分词print([(word,tag) for word,tag in pos_tag(text) if word.isalpha()]) # 查询标注结果print([(word,tag) for word,tag in pos_tag(text) if tag in ["NNP","PRP"]]) #提取名词和代词

结果展示:

[('Where', 'WRB'), ('do', 'VBP'), ('you', 'PRP'), ('from', 'IN'), ('Do', 'VBP'), ('you', 'PRP'), ('like', 'IN'), ('English', 'NNP')][('you', 'PRP'), ('you', 'PRP'), ('English', 'NNP')]

二、对于汉语中特定词性词进行提取

首先引入jieba库,先进行分词,再利用其中的posseg对字符串进行标注。代码如下:

import jieba.posseg as psegs="""你想去学校填写学生寒暑假住校申请表吗?"""words=pseg.cut(s) #分词print([(word.word,word.flag) for word in words if word.flag in ['v']]) #提取动词

 结果展示如下:

[('想', 'v'), ('去', 'v'), ('填写', 'v')]

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。