找到列表元素的最近值

Cha*_*ndo 2 python element intersection list

我有两个列表:

>>> list1 = ['gain','archive','win','success']
>>> list2 = ['i','win','game','i','am','success','cool']
Run Code Online (Sandbox Code Playgroud)

并且我通过比较列表找到了两个列表的相同值.

>>> result= set(list1) & set(list2)
Run Code Online (Sandbox Code Playgroud)

输出是

set(['win', 'success'])
Run Code Online (Sandbox Code Playgroud)

现在我想找到下一个元素值result.这将是:'game''cool'.

我该怎么做(使用python 2.7)?

khe*_*ood 7

鉴于你有交叉词

result = { 'win', 'success' }
Run Code Online (Sandbox Code Playgroud)

您可以list2像这样找到下一个单词:

next_words = [list2[list2.index(word)+1] for word in result]
Run Code Online (Sandbox Code Playgroud)

index获取列表中给定元素的索引.您可以向其中添加1以获取下一个元素.

如果您的元素位于列表的末尾,则会抛出异常,因为没有"next"元素可以获取.