python 创建一个保留重复值的列表的补码
给定列表a = [1,2,2,3],其子列表b = [1,2]以这样一种排序(a)==排序(b补码)的方式找到一个补全b的列表.在上面的例子中,补码将是[2,3]的列表. 使用列表解析是很诱人的: complement = [x for x in a if x not in b] 或设置: complement = list(set(a) - set(b)) 然而,这两种方式都将返回complement = [3]. 一个明显的做法是: complement = a[:] for element in b: complement.remove(element) 但是,这种感觉非常不满
用户评论