gpt4 book ai didi

python - python中的while语句

转载 作者:太空宇宙 更新时间:2023-11-04 02:30:42 24 4
gpt4 key购买 nike

while b:
n.append(int(b%10))
b=b/10
return n

这里的 while 语句即使在 b=0 时也不会停止,这是什么问题?

最佳答案

让我们简化您的 while 循环并删除不必要的部分:

while b:
b = b/10
print(b)

它所做的是,它采用给定的 b将其除以 10,并将其指定为 b。现在“除以 10”部分很棘手。

  • 如果您使用的是 Python 2,它可以用作整数除法:

    19/10 = 1

    让我们再分一次:

    1/10 = 0
  • 但在 Python 3 中,这是一个实际的、适当的除法:

    19/10 = 1.9

    让我们把这个再分一次:

    1.9/10 = 0.19

因此在 Python 2 中,您的循环将继续向下舍入除法,最终您将达到 0。但是在 Python 3 中,您将继续正确划分您的 float ,并且永远不会达到 0。这意味着您的 while 将永远不会终止。

解决方案:如果你想通过整数除法最终以 0 结束,以便你的循环在某个点结束,你可以在 Python 3 中使用 a//b在 Python 2 中获得与 a/b 相同的行为。

关于python - python中的while语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49260086/

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