1

我正在尝试学习 Python 并进行一些练习,一切顺利,并且我学到了一些新东西。

但是我在互联网上遇到了这段代码,它想让我写出新的 Max 和 Min 应该变成什么,B 也会在运行后变成什么。

我试图寻找正确的答案,但没有人打印出来。我试图在我的 IDE 中运行它,但实际上我从来没有得到输出。我也尝试过编写“print(b)”,但没有得到任何结果。

min = 5
max = 10
b = 0
a = -2

if a < min:
  min = a
elif a > max:
  max = a
else:
  b += 1

我认为答案应该是 Min 将是 -2,因为 a 被声明为 -2 并且第一条语句“if a < min:”表示如果 -2 小于 5,则 5 将变为 -2。

其他语句“<code>a > max:”询问 -2 是否高于 10,10 将是 –2,但由于 -2 不高于我们转到 else,它说我们应该将 1 加到 0,这将给出b = 1。所以我的答案是 min = -2 、 max = 10 和 b = 1。

我的回答正确吗?如果不是,我做错了什么?另外,有什么方法可以在python中运行它并通过print(b, max, min)我尝试过得到答案,但它不起作用。

4

1 回答 1

1

我猜第二个条件应该if不是elifif-elif-else只要其中任何一个满足条件,一个块就会退出。因此,正如您的代码中的第一个条件if a < minTrue,不会检查下一个条件。

min = 5
max = 10
b = 0
a = -2
if a < min:
  min = a
if a > max:
  max = a
else:            <-- this is executed only if: `a > max`: is `False`
  b += 1
print b, max, min
#1 10 -2
于 2013-06-13T10:56:57.503 回答