gpt4 book ai didi

Python,在for循环中有一个条件

转载 作者:太空宇宙 更新时间:2023-11-03 14:20:05 27 4
gpt4 key购买 nike

有人带着这个例子给我 (python2):

num = int(input("num")) 
den = int(input("den"))

quot = 0
rest = den
i = num

for i in range(i,i>den, -den):
quot = quot + 1
rest = i - den

print quot
print rest

代码运行良好,执行其需要执行的操作,并且不会产生错误。

我不明白为什么。对我来说,range() 需要一个下限和一个上限,对我来说,i 将是较低的值,而 i>den应该评估为 bool 值?

context 是一个使用 for 循环实现除法的教程函数。

最佳答案

这是“duck typing”的应用程序。在这种情况下,i>num评估为 bool 值 TrueFalse , 但在 range 的上下文中功能,True相当于整数 1 , 和 False相当于整数 0 .

因此,例如,如果 i>numFalse , 那么这段代码就等同于

for i in range(i, 0, -num):
#do stuff

关于Python,在for循环中有一个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28933958/

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