我有一个元组列表:
sentenceParts = [('there', 'EX'), ('is', 'VBZ'), ('a', 'DT'), ('huge', 'JJ'), ('shaggy', 'NN'), ('dog', 'NN'), ('in', 'IN'), ('the', 'DT'), ('yard', 'NN')]
我希望有一个函数,例如,如果我知道我需要找到值'IN'(其键在本例中为'IN'),该函数将返回上一个元组键(在本例中为'dog')以及该元组键的数字索引(在本例中,我相信它将是5[0])
我当前从此行获取要搜索的值(“in”):
wordIndex = next((word for word, value in sentenceParts if value == "IN"), None)
那一行正确地返回了“in”键。我需要一个类似的方法来获得我需要的输出('dog',5[0]prehaps)。我试过搞乱各种版本的sentenceParts.index(wordIndex),但我肯定用得不对。我已经找到了至少三种不同的方法来让代码返回给我,还有几十种方法来获得ValueError或AttributeError。。。但我的头缠着它还不走运,像“狗”,5[0]
如果我必须将其放入伪代码中,它将是:
wordIndex = next((PREVIOUS word, INDEX, for word, value in sentenceParts if value == "IN"), None)
谢谢。抱歉,如果有人问过这个问题,但我找不到任何真正符合法案后,大量搜索。。。如果我真的看到了,我可能还没有足够的知识去认识它。希望我没有错过。谢谢你的帮助
在压缩列表上使用
zip
和enumerate
:用法:
其思想是在digrams上迭代,而不是单个单词,因此您始终可以将前面的单词作为可用上下文:
相关问题 更多 >
编程相关推荐