为了账号安全,请及时绑定邮箱和手机立即绑定

Python,计算列表差异

Python,计算列表差异

幕布斯6054654 2019-08-31 14:36:13
在Python中,计算两个列表之间差异的最佳方法是什么?例A = [1,2,3,4]B = [2,5]A - B = [1,3,4]B - A = [5]
查看完整描述

3 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

使用set,如果你不关心项目的顺序或重复。如果您这样做,请使用列表推导:


>>> def diff(first, second):

        second = set(second)

        return [item for item in first if item not in second]


>>> diff(A, B)

[1, 3, 4]

>>> diff(B, A)

[5]

>>> 


查看完整回答
反对 回复 2019-08-31
?
冉冉说

TA贡献1877条经验 获得超1个赞

如果订单无关紧要,您可以简单地计算设定差异:


>>> set([1,2,3,4]) - set([2,5])

set([1, 4, 3])

>>> set([2,5]) - set([1,2,3,4])

set([5])


查看完整回答
反对 回复 2019-08-31
?
HUX布斯

TA贡献1876条经验 获得超6个赞

你可以做一个


list(set(A)-set(B))


list(set(B)-set(A))


查看完整回答
反对 回复 2019-08-31
  • 3 回答
  • 0 关注
  • 543 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信