python - 从数组列表中提取具有特定标签的单词
问题描述
我想从列表中获取只有“NNP”标签的单词,如下所示:
[[('Original', 'JJ'), [('尊敬的', 'RB'), (',', ',')], [('侦探', 'NNP'), ('.', '.'), ('H.', 'NNP'), ('!', '.'), ('Thompson', 'NNP'), ('#', '#'), ('1032' , 'CD')]]
我试过了:
nouns = [word for (word, pos) in pos_sentences if pos == 'NNP']
Traceback (most recent call last):
File "<ipython-input-187-0de3a4db4bba>", line 1, in <module>
nouns = [word for (word, pos) in pos_sentences if pos == 'NNP']
File "<ipython-input-187-0de3a4db4bba>", line 1, in <listcomp>
nouns = [word for (word, pos) in pos_sentences if pos == 'NNP']
ValueError: too many values to unpack (expected 2)
我只想要带有标签“NNP”的单词,但不知道像这样遍历列表的方法
解决方案
首先展平列表:
import functools
pos_sentences = functools.reduce(lambda x, y: x + y, pos_sentences) # Flattens the list
nouns = [word for (word, pos) in pos_sentences if pos == 'NNP'] # Do as you did before
推荐阅读
- ruby - 通过ruby中的方法输出哈希中的键值
- azure - 无法使用 azure databricks 连接到 azure sql dw
- excel - 为什么字典需要第二个关键项目而不是第一个
- android - 从数据库加载数据时的欢迎屏幕一瞥
- node.js - 每次尝试从 NodeJS 调用 AWS lambda 函数时,我都会收到“错误 [ConfigError]:配置中缺少区域”
- xml - 如何在 Odoo 10 的日历视图中显示自己的看板卡?
- github - 未找到循环 CI 工作流取消归档缓存
- spring-boot - org.springframework.web.client.HttpClientErrorException$NotFound: 404 on postForObject using rest template
- reactjs - 如果字段为空,如何在graphql结果中显示NULL
- python - 为什么我的输出总是以 NaN 的形式出现,我期待输出作为我的系列数据?