这里有点蟒蛇/编程新手。访问元组列表中的元组的第一个元素的范围
我想从元组列表中访问指定范围的元组,但我只想访问元组范围中的第一个元素。指定的范围基于我正在寻找的模式字符串中已被标记并由nltk标记的模式。我的代码:
from nltk.tokenize import word_tokenize
from nltk.tag import pos_tag
text = "It is pretty good as far as driveway size is concerned, otherwise I would skip it"
tokenized = word_tokenize(text)
tagged = pos_tag(tokenized)
def find_phrase():
counter = -1
for tag in tagged:
counter += 1
if tag[0] == "as" and tagged[counter+6][0] == "concerned":
print tagged[counter:counter+7]
find_phrase()
打印输出:
[('as', 'IN'), ('far', 'RB'), ('as', 'IN'), ('driveway', 'NN'), ('size', 'NN'), ('is', 'VBZ'), ('concerned', 'VBN')]
我真正想要的:
['as', 'far', 'as', 'driveway', 'size', 'is', 'concerned']
是否可以修改我的代码print tagged[counter:counter+7]
行让我所需的打印输出?
FYI无论何时你发现自己写的只是获取一个循环递增计数器变量,你或许应该使用'枚举'而不是。 – roippi