gpt4 book ai didi

python - 为什么程序会计算一个额外的值(循环 "while")?

转载 作者:行者123 更新时间:2023-12-03 23:58:35 27 4
gpt4 key购买 nike

为什么程序要多计算一个值?例如,我给他 N = 50。它给出:

1
4
9
16
25
36
49
64

代码:

N = int(input())

n = 1

k = 1

while n < N:

n = k ** 2
print(n)
k = k + 1

最佳答案

如前所述,您检查 n 然后更改 n,您想更改 n 然后检查,然后再继续。

您可以使用 walrus operator分配n并在 while 语句中检查它的值。 (需要 Python 3.8+)

N = int(input())
n = 1
k = 1

while (n := k**2) < N:
print(n)
k += 1

这实际上分配了 nk**2然后检查结果是否为 <N在继续之前。

1
4
9
16
25
36
49

关于python - 为什么程序会计算一个额外的值(循环 "while")?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66001085/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com