python 数组中数字求和是否为零
需求是:
给定一个不少于4个元素的list(4个元素不重复):
请确认是否存在这样的4个元素,使得四数之和为0?如果有打印出符合条件的四个元素,如果没有打印False
#!/usr/bin/python3 # -*- coding: utf-8 -*- # 定义数据 nu = [1, -1, -2, -3, 6, 7, 8, -9] nu_len = (len(nu)) result = [] # 列出数组index所有排列组合且长度为4 for i in range(1, nu_len): for j in range(1, nu_len): for k in range(1, nu_len): for h in range(1, nu_len): # 排序以便去重 a = sorted([nu[i], nu[j], nu[k], nu[h]]) b = sum(a) if b == 0: # 去掉重答案 if a not in result: result.append(a) # 判断result是否有值 if not result: print(False) else: print(result)