显示python中有两个常用元素的列表
我有一份清单如下显示python中有两个常用元素的列表,python,Python,我有一份清单如下 temp=[[1,2,3],[0,2,3],[4,5,6],[1,4,5],[0,4,5]] 我想显示第二个和第三个元素为公共元素的所有列表。在上面的例子中,结果应该是[[1,2,3],[0,2,3],[1,4,5],[0,4,5]] 谢谢你这个怎么样: >>> ends = [i[1:] for i in temp] >>> print ends [[2, 3], [2, 3], [5, 6], [4, 5], [4, 5]] >
temp=[[1,2,3],[0,2,3],[4,5,6],[1,4,5],[0,4,5]]
我想显示第二个和第三个元素为公共元素的所有列表。在上面的例子中,结果应该是[[1,2,3],[0,2,3],[1,4,5],[0,4,5]]
谢谢你这个怎么样:
>>> ends = [i[1:] for i in temp]
>>> print ends
[[2, 3], [2, 3], [5, 6], [4, 5], [4, 5]]
>>> result = [i for i in temp if ends.count(i[1:]) > 1]
>>> print result
[[1, 2, 3], [0, 2, 3], [1, 4, 5], [0, 4, 5]]
对于此解决方案,我使用了列表理解,您可以在此处阅读:
到目前为止您都尝试了什么?如果你发现这个解决方案解决了你的问题,请考虑接受它作为答案(选票旁边的刻痕)。
res = []
for idx, i in enumerate(temp):
for jdx, j in enumerate(temp):
if i[1]==j[1] and i[2]==j[2] and jdx != idx:
res.append(i)