如何解决如何比较列表python3中的特定元素?
l1= [['1','apple','1','2','0','0'],['1','cherry','0']]
l2 = [['1','1'],'plums','15'],'orange','1']]
output = []
for i in l1:
for j in l2:
if i[1] != j[1]:
output.append(j)
break
print(output)
Expected Output:
[['1','15']]
如何停止迭代并找到唯一元素并获得子列表? 如何停止迭代并找到唯一元素并获得子列表?
解决方法
根据水果名称查找L2中不在L1中的元素:
l1= [[1,'apple',3],[1,'cherry',4]]
l2 = [[1,'plums',4],'orange',4]]
output = []
for e in l2:
if not e[1] in [f[1] for f in l1]: # search by matching fruit
output.append(e)
print(output)
输出
[[1,3]]
,
您可以将list1
中的所有唯一元素存储在新列表中,然后检查list2是否在new list
中存在该元素。像这样:
newlist = []
for item in l1:
if item[1] not in newlist:
newlist.append(item)
output = []
for item in l2:
if item[1] not in newlist:
output.append(item)
print(output)
这效率低下,但确实很容易理解。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。