Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python2.x中的交叉引用2个列表_Python_List - Fatal编程技术网

Python2.x中的交叉引用2个列表

Python2.x中的交叉引用2个列表,python,list,Python,List,我不熟悉Python(使用2.6和2.7),但我已经搜索了docs.Python.org和这个网站。我发现了一个类似的问题: …但我想交叉引用两个不同大小和未知订单的列表。 下面是我想做的一个例子: >>> mammals = ["gorilla","cat","rat","chimpanzee","dog","beaver"] >>> apes = ["orangutan","chimpanzee","human","gorilla"] # magic

我不熟悉Python(使用2.6和2.7),但我已经搜索了docs.Python.org和这个网站。我发现了一个类似的问题:

…但我想交叉引用两个不同大小和未知订单的列表。 下面是我想做的一个例子:

>>> mammals = ["gorilla","cat","rat","chimpanzee","dog","beaver"]
>>> apes =  ["orangutan","chimpanzee","human","gorilla"]

# magic happens here

>>> print result # order doesn't matter
['chimpanzee', 'gorilla']
给出常见条目的结果。了解Python可能会有一个简单/优雅的解决方案来解决这样一个简单的问题。

使用集合:

mammals = ["gorilla","cat","rat","chimpanzee","dog","beaver"]
apes =  ["orangutan","chimpanzee","human","gorilla"]
print set(mammals).intersection(apes)
印刷品

set(['gorilla', 'chimpanzee'])
如果你需要一个列表,如果你可以把它作为一个集合,那么

set(mammals) & set(apes)

这非常适合
设置
内置类型

将基本列表设置为一组:

mammals = set(["gorilla","cat","rat","chimpanzee","dog","beaver"])
然后使用交集函数(比较列表不必是集合)


感谢您提供快速(优雅)的解决方案。正是我所需要的。谢谢你提供的快速(优雅)解决方案。这更好。谢谢。。。在看到这些答案后,我想我应该从docs.Python.org中找到答案
mammals = set(["gorilla","cat","rat","chimpanzee","dog","beaver"])
>>> mammals.intersection(["orangutan","chimpanzee","human","gorilla"])
set(['gorilla', 'chimpanzee'])