方法1:
自己写的,耗时很长。当两个list是100000级别长度的数据时,需要好几分钟
list1 = filelist(options.inputpath, filefeat='.jpg')
list2 = filelist(options.outputpath, filefeat='.jpg')
list3 = []
for jpg in list1:
if jpg not in list2:
list3.append(jpg)
方法2:
paython自带方法。速度很快
list1 = filelist(options.inputpath, filefeat='.jpg')
list2 = filelist(options.outputpath, filefeat='.jpg')
set3 = set(list1).difference(set(list2))
list3 = list(set3)
python比较两个list
初始化数据
listA = [‘zhangsan’, ‘lisi’, ‘wangwu’]
listB = [‘zhangsan’, ‘lisi’, ‘zhaoliu’]
1、取差集
1.1、listA对应listB的差集
set(listA).difference(set(listB))
-----set([‘wangwu’])
1.2、listB对应listB的差集
set(listB).difference(set(listA))
-----set([‘zhaoliu’])
2、取交集
set(listA).intersection(set(listB))
-----set([‘lisi’, ‘zhangsan’])
3、取并集
set(listA).union(set(listB))
-----set([‘lisi’, ‘zhaoliu’, ‘zhangsan’, ‘wangwu’])
更多用法可以自行查询一下set的用法
https://docs.python.org/2/library/stdtypes.html?highlight=set#set