【发布时间】:2021-01-05 02:46:54
【问题描述】:
我有一个 for 循环进入一个包含 10 个项目的列表。对于它拥有的每个项目,它都会使用 for 循环向列表中添加 10 个。一旦列表长度为 100,我想终止循环,这可能吗?或者我无法退出循环,因为列表永远不会结束增长?
这是我的代码:
keywords = [
"apple store",
"applesauce recipe",
"applesauce",
"appleseeds",
"apples to apples",
"apples and honey",
"applesauce cake",
"apple support",
"apples and bananas"
]
for i in keywords:
url = "http://suggestqueries.google.com/complete/search?output=firefox&q=" + i
response = requests.get(url, verify=False)
suggestions = json.loads(response.text)
for word in suggestions[1]:
k = word
keywords.append(k)
print(word)
我尝试在最后添加以下内容,但没有成功
if len(keywords) == 100:
print('this is where it needs to break')
break
当它达到 100 时,我看到了打印消息,但它一直在运行。
有什么想法吗?
【问题讨论】:
-
我认为您附加到关键字,它是您正在循环的列表,这可能会不断增长。尝试在每次迭代结束时打印
len(keywords)。另外,不需要将word设置为k,只需附加word -
是的,我确实添加了 print len(keywords) 并不断增长。我想在 len 为 100 时杀死它。
-
break终止最近的包装范围,也许您终止了内部循环但外部循环仍在循环? -
哦,明白了!我需要将 if else 移到外循环!现在它起作用了。谢谢sss
-
我在设置 len(keywords) == 1000 时遇到了一些问题。出于某种原因,它达到了 1000,但它一直在运行