【发布时间】:2017-04-25 05:21:53
【问题描述】:
目前无法打破这个for 循环。如果在此列表中找不到变量,我想打破它,以便它可以移动另外两个 for 循环。它期望for 循环的顶部有一个缩进块,但是如果我更改break 的位置或for 循环的开始位置,它就不起作用。救命!
while cyclenumb <= 10000:
for x in userpassword[k]:
for z in lowercaselist:
if x in z:
newpasswordlist.append(z)
k +=1
break
else:
for x in userpassword[k]:
for z in uppercaselist:
if x in z:
newpasswordlist.append(z)
k +=1
break
else:
【问题讨论】:
-
break只跳出内循环,而不跳出外循环。你确定你需要内循环吗?也许应该只是if x in lowercaselist -
乍一看,您的缩进似乎不正确。如果 x 在 z 中,第一个 else 是否与第一个相反?然后它应该缩进到与第一个 if 相同的级别。第三个 for 语句是否在 else 之下?然后一切都应该比其他缩进更深一级。
-
lowercaselist和uppercaselist的值是多少?它们是列表列表吗?这就是当您循环遍历它们然后使用x in z时的样子。 -
barmar,它们是包含字母表的小写和大写的列表,例如“a”、“b”、
-
那你为什么要使用
x in z而不是x = z?或者你为什么不直接写if x in lowercaselist:?
标签: python list if-statement for-loop break