如何在排除两个特定整数的同时总结整数列表中的所有项?

时间:2017-09-20 14:36:49

标签: python-3.x

我觉得我不应该为此烦恼,但我尝试过的任何事情似乎都没有用。

我需要将整数(nums)列表中的所有项目相加,同时排除两个特定的整数(a和b)。

到目前为止我所拥有的:

def suminout(nums, a, b):
    total = 0
    for i in range(len(nums)):
        if nums[i] != a and nums[i] != b:
            ??????
    return total

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

只需使用以下代码将数字(nums[i])添加到总数中:

total = total + nums[i]

或者:

total += nums[i]

请注意,您可以使用预定义的sum功能来理解缩短代码:

def suminout(nums, a, b):
    return sum(i for i in nums if i not in [a,b])

答案 1 :(得分:0)

使用内置sum

的生成器理解
l = [1,2,3,4,5]

result = sum(x for x in l if x not in [3,4])

print(result)

你的职能:

def suminout(nums, a, b):
   return sum(x for x in nums if x not in [a,b])