领口要求真的高/三数之和 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。 注意:答

import itertools
from functools import reduce
l=[]
l1=[-1,0,1,2,-1,-4]
m=list(itertools.combinations(l1,3)) #为了拿出所有的三元组 数学组合
lis=[]#用来添加目标列表
for n in m:
b=reduce(lambda x,y:x+y, n)#题干要求求和
if b==0:
if sorted(n) not in lis:#这一步是为了去掉重复的元素
lis.append(sorted(n))#题意答案
else:
continue
print(lis)

贡献思路,代码暂时不规范

你可能感兴趣的:(小白说道,函数特点,数学思想,python基础)