【问题标题】:Enter Output of Break and Continue Problem输入中断并继续问题的输出
【发布时间】:2022-11-12 15:14:03
【问题描述】:

我现在是一名学习 Python 的初学者 CS 学生。我在 Zybooks 上遇到了一个非常基本的挑战,要求我输入所提供代码的输出。它旨在帮助理解 break 和 continue 语句在 for 和 while 循环中是如何工作的。我试图遍历每一行代码的逻辑,但我就是无法理解。如果有人可以帮助我更多地理解这一点,我将不胜感激。

stop = int(input())
result = 0
for n in range(10):
    result += n + 2
    if result > stop:
        break
    print(n)
print(result)

【问题讨论】:

  • 代码的输出取决于定义stop 的输入
  • 对于那个很抱歉。输入为 11。
  • 这个问题的答案在于非常基础的 Python 知识。如果您打算将来成为一名软件工程师,我建议您在开始寻找答案之前学习一门语言的基本原理。

标签: python


【解决方案1】:

使用break 将简单地停止循环并退出它,而不会继续迭代和执行代码。

使用continue 将停止执行该块,将进行迭代并从那里正常工作

例如:

for i in range(10):
  print(i)
  if i > 5:
    break
  print(i)

上面的代码将停在i==6
输出将如下所示:

>> 0
>> 0
>> 1
>> 1
>> 2
>> 2
>> 3
>> 3
>> 4
>> 4
>> 5
>> 5



for i in range(10):
  print(i)
  if i > 5:
    continue
  print(i)

上面的代码将打印 i 仅用于从 0 到 5 的值。但代码将一直执行到 continue
输出:

>> 0
>> 0
>> 1
>> 1
>> 2
>> 2
>> 3
>> 3
>> 4
>> 4
>> 5
>> 5
>> 6
>> 7
>> 8
>> 9

【讨论】:

    【解决方案2】:

    嘿 OP 我知道自从上次发布以来已经有一段时间了,你现在可能已经完成了课程。以下是我们在 Zybooks 材料中没有看到的内容。看到调试通过每个方程运行并在你进行时更改每个循环上的变量会更有意义。

    即使我们学习了增量的东西,我们也没有看到长格式。因此,在猛烈抨击它之后,这就是我的工作方式。

    抱歉,增量关闭。第一次在这个论坛发帖,也是第一次在论坛中使用代码块。

    'stop = 5
     result = 0
     for n in range(10):
         result += n * 4
            if result > stop:
            break
            print(n)
    print(result)'
    

    #Loop 1 print N is 0 结果加0 0 += 0 * 4 == 0 所以结果为0 加0或0 + 0 == 0

    #Loop 2 print N is 1 result Incremented by 4 0 += 1 * 4 == 4 所以结果是 0 增加 4 或 0 + 4 == 4

    #Loop 3 print N is 2 result Incremented by 8 4 += 2 * 4 == 8 所以结果是 4 增加 8 或 4 + 8 == 12

    【讨论】:

      猜你喜欢
      • 2017-06-15
      • 1970-01-01
      • 2012-06-15
      • 2021-02-24
      • 2015-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多