【发布时间】:2019-12-18 12:33:14
【问题描述】:
我意识到我可能犯了一些非常基本的语法错误,但我在修复或谷歌搜索时遇到了麻烦。
我希望进程在达到某个限制时停止。似乎是 while 循环的完美用例。不过……
test_list = []
integers = list(range(40))
while len(test_list) < 20:
for i in integers:
test_list.append(i)
这将贯穿整个integers 列表,而不是中途停止。
len(test_list) < 20 现在返回 false。达到条件时循环不应该中断吗?
【问题讨论】:
-
您有一个嵌套的 for 循环,它将填充 test_list,而 while 循环将在第二次迭代时退出。如果您不明白,请在 while 下方和 test_list.append() 下方添加一条打印语句
-
while包含for,因此for将运行一个完整的周期,然后while将检查条件(再次)。您应该至少摆脱其中一个循环。查找slicing以了解如何在不使用循环的情况下完成此操作。
标签: python while-loop syntax