python三个数求和_Python:list是否包含3个连续的整数,总和为7...

我正在为我的编码训练营准备应用程序的准备材料.这是我在使用(使用Python)时遇到的实践问题:

“编写一个函数’lucky_sevens(numbers)’,该函数接收一个整数列表,如果任意三个连续元素的总和为7,则输出True.

确保您的代码正确检查数组的第一个和最后一个元素.”

我知道如何一次在一个元素中循环遍历一个数组,但是不知道如何“保留”一个元素,同时还根据提示要求评估相对于第一个元素的第二个和第三个元素.从下面的尝试中可以看出,我不确定何时/何地/如何增加索引值来搜索整个列表.

def lucky_sevens(numbers):

index1 = 0 # For assessing 1st of 3 numbers

index2 = index1 + 1 # For assessing 2nd of 3 numbers

index3 = index2 + 1 # For assessing 3rd of 3 numbers

# If all index values are within the list...

if index1 <= (len(numbers) - 2) and index2 <= (len(numbers) - 1) and index3 <= len(numbers):

# If the values at those indices sum to 7...

if numbers[index1] + numbers[index2] + numbers[index3] == 7:

print True

else:

print False

# I think the increments below may be one of the places I am incorrect

index1 += 1

index2 += 1

index3 += 1

当我跑步

lucky_sevens([2, 1, 5, 1, 0])

我认为这是打印False,因为它只考虑第0、1和2位置的元素(总和为8,而不是7).

它应该显示True,因为位于第一,第二和第三位置的元素总计为7.(1 5 1 = 7).

有人可以提供建议吗?我会很感激.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值