首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过在函数中使用while循环返回异常数组的和?

如何通过在函数中使用while循环返回异常数组的和?
EN

Stack Overflow用户
提问于 2020-08-31 05:06:53
回答 1查看 35关注 0票数 0

这里是Python初学者。我已经有了这个问题的解决方案,但我不明白为什么解决方案中的"add“变量在创建异常以删除6到9之间的数字时起作用。我已经尝试过Python,但仍然不理解。事先非常感谢!

问题:返回数组中数字的和,除了忽略以6开头并延伸到下一个9的数字部分(每6个后面至少有一个9)。如果没有数字,返回0。

示例解决方案代码

代码语言:javascript
复制
def summer_69(arr):
    total = 0
    add = True
    
    for num in arr:
        while add:
            if num != 6:
                total += num
                break
            else:
                add = False
        while not add:
            if num != 9:
                break
            else:
                add = True
                break
    return total

样本答案:

代码语言:javascript
复制
summer_69([1, 3, 5]) --> 9
summer_69([4, 5, 6, 7, 8, 9]) --> 9
summer_69([2, 1, 6, 9, 11]) --> 14
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-31 05:17:27

您可以将变量"add“视为标志。在这种情况下,我认为这可能是这个变量的更好的名称。

它只用于判断是否在数组中的数字序列中遇到了6,然后一旦设置了,就会在数组中遍历任意数量的数字,直到得到9,然后重新设置标志。

将变量"add“重命名为”标志“可能会有所帮助。让您的新变量“标志”默认为False,然后如果遇到6设置为true的“标志”。一旦标志打开,不要在序列中添加任何尾随数字,直到您运行到数字9,然后重置为false。

也许这将有助于提高可读性。命名变量是编程中最困难的部分。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63665075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档