python list查找元素_在python中的两个列表列表之间查找通用元素...

我的清单如下.

mylist =

[

[

[

"chocolate_pudding",

920.8000000000001

],

[

"caramel_pudding",

345.59999999999997

],

[

"pudding",

248.0

],

[

"banana_pudding",

27.599999999999998

]

],

[

[

"biscuits",

190.8

],

[

"chocolates",

33.599999999999994

],

[

"chocolate_pudding",

920.8000000000001

]

],

[

[

"tiramusu",

145.8

]

],

[

[

"cakes",

139.29999999999998

]

],

[

[

"butter_cakes",

133.0

]

],

[

[

"chocolate_pudding",

920.8000000000001

]

]

]

我想找到在列表中多次出现的元素(例如[“ chocolate_pudding”,920.8000000000001]),并希望删除重复的元素,同时保留第一个条目.

因此,我的输出应如下所示.

mylist =

[

[

[

"chocolate_pudding",

920.8000000000001

],

[

"caramel_pudding",

345.59999999999997

],

[

"pudding",

248.0

],

[

"banana_pudding",

27.599999999999998

]

],

[

[

"biscuits",

190.8

],

[

"chocolates",

33.599999999999994

]

],

[

[

"tiramusu",

145.8

]

],

[

[

"cakes",

139.29999999999998

]

],

[

[

"butter_cakes",

133.0

]

]

]

我一直在尝试的代码如下.

mylist_copy = mylist

for item in mylist:

myindex = mylist.index(item)

#print(item)

for single_item in item:

#print(single_item)

for item_copy in mylist_copy:

if mylist_copy.index(item_copy) != myindex:

if single_item in item_copy:

print(single_item)

因为,它有许多for循环,所以我想要一种有效的方法.注意:我也尝试过;

mylist_copy = mylist

for item in mylist:

myindex = mylist.index(item)

for item_copy in mylist_copy:

if mylist_copy.index(item_copy) != myindex:

print(set(item).intersection(item_copy))

但是,交集不支持列表.

在python中有一种简便快捷的方法吗?