首页 > 解决方案 > 如何在产生一定数量后打破循环?

问题描述

所以这是我的代码,我创建了这个程序,以便它将循环运行,直到输出中出现 DIGITS 1 和 4,然后会中断,但我想以某种方式更改它,而不是“中断“在检测到数字 1 或 4 后,我希望它仅在输出产生 1 或 4 后才中断,我该怎么做?这是我的代码..

当输出本身,而不是输出中的数字,输出本身,产生 1 或 4 时,我应该怎么做才能确保它停止?

标签: pythonlist

解决方案


您可以一遍又一遍地循环并检查整个sum_of_digits. 试试这个:

number = 145
sum_of_digits = 0
x = ''
while x not in ['1', '4']:
    for digit in str(number):
       sum_of_digits += (int(digit)**2)
    x = str(sum_of_digits)
    number = sum_of_digits
    sum_of_digits = 0
print(x)

我的输出:4

这可以改进,但我不想更改更多代码


推荐阅读