【发布时间】:2018-10-30 04:03:23
【问题描述】:
我写了这段代码。就像 len() 函数。
def length_itr_for(list):
total = 0
for i in list:
total += 1
return total
print length_itr_for([1,2,3,4,5,6,7,8])
输出是; 8. 因为在这个列表中,有 8 个值。所以 len 在这个列表中是 8。
但我不知道如何用while循环编写这段代码?
while list[i]: etc...我虽然做了一些事情,但我不知道我应该在这里写什么。
编辑: 实际上我也试过这段代码。但这不是好的代码。刚试了,没用。
def length_itr_whl(list):
total = 0
i = 0
while list[i]:
total = total + 1
i = i + 1
return total
print length_itr_whl([1,2,3,4,5])
【问题讨论】:
-
为什么要用while循环来写这个。作为for循环非常好
-
当然,for循环很好。但我不知道。我只是想试试他们两个。只是为了改进。
-
虽然意图是好的,但你不会尝试使用
while循环来实现len,因为如果你超出范围,你会得到while list[i]的IndexError -
您需要通过说
while i < len(list)来绑定您的 while 条件,但您只是在那里使用len。这不是练习while循环的最佳练习 -
好的,谢谢您的关注。
标签: python loops while-loop