在python中交叉两个单词列表

use*_*545 5 python list

我想在python中找到两个列表的交集.我有一些看起来像这样的东西:

>>> q = ['apple', 'peach', 'pear', 'watermelon', 'strawberry']
>>> w = ['pineapple', 'peach', 'watermelon', 'kiwi']
Run Code Online (Sandbox Code Playgroud)

我想找到这样的东西:

t = ['peach', 'watermelon']
Run Code Online (Sandbox Code Playgroud)

我知道这是一个简单的问题,但我对python不熟悉 - 有没有人有任何建议?

Tur*_*ole 10

intersection()方法可用于集合,可以从列表轻松创建.

ETA:如果你想要一份清单......

q = ['apple', 'peach', 'pear', 'watermelon', 'strawberry']
w = ['pineapple', 'peach', 'watermelon', 'kiwi']
t = list(set(q) & set(w))
Run Code Online (Sandbox Code Playgroud)

现在是:

['watermelon', 'peach']
Run Code Online (Sandbox Code Playgroud)

  • 打败我.集合也可以使用二元运算符`|`(OR = union),`&`(AND = intersection)和`^`(XOR =在一个集合中但不是两个集合),所以这也给出了答案:`t = set(q)&set(w)` (2认同)
  • @ user808545.是的,谷歌为`python csv`并点击第一个链接. (2认同)