-
For 循环是一种
有限迭代
,意味着循环主体将运行预定义的次数。这与无限迭代
循环不同,无限迭代循环是指循环重复未知次数,并在满足某个条件时结束,while 循环正是这种情况。下面是一个 while 循环的示例:card_deck = [4, 11, 8, 5, 13, 2, 8, 10] hand = [] # adds the last element of the card_deck list to the hand list # until the values in hand add up to 17 or more while sum(hand) <= 17: hand.append(card_deck.pop())
这个示例包含两个函数。
sum
返回列表中的元素之和,pop
是一个列表方法,它会从列表中删除最后一个元素并返回该元素。 -
While 循环的组成部分:
- 第一行以关键字
while
开始,表示这是一个while
循环。 - 然后是要检查的条件。在此示例中是
sum(hand) <= 17
。 while
循环头部始终以冒号:
结束。- 该头部之后的缩进部分是
while
循环的主体。如果while
循环的条件为true
,该循环的主体将被执行。每次运行循环主体时,条件将被重新评估。这个检查条件然后运行循环的流程将重复,直到该表达式变成False
。 - 注意: 循环的缩进主体应该至少修改测试表达式中的一个变量。如果测试表达式的值始终不变,就会变成无限循环!
- 第一行以关键字
-
写一个
while
循环,用于计算比整数limit
小的最大平方数,并将其存储在变量nearest_square
中。平方数是整数乘以自己后的积,例如 36 是一个平方数,因为它等于 6*6。例如,如果limit
是 40,你的代码应该将nearest_square
设为 36。 解决方案:limit = 40 num = 0 # write your while loop here while (num+1)**2 < limit: num += 1 nearest_square = num**2 print(nearest_square)