Python if语句中的Break for循环
当前在为循环中断此Python if语句中的Break for循环,python,list,if-statement,for-loop,break,Python,List,If Statement,For Loop,Break,当前在为循环中断此时遇到问题。如果在此列表中找不到该变量,我想将其打断,以便它可以为循环再移动两个。它希望for循环的顶部有一个缩进块,但是如果我更改中断的位置或for循环的开始位置,它就不起作用了。救命啊 while cyclenumb <= 10000: for x in userpassword[k]: for z in lowercaselist: if x in z: newpasswordlist
时遇到问题。如果在此列表中找不到该变量,我想将其打断,以便它可以为
循环再移动两个。它希望for
循环的顶部有一个缩进块,但是如果我更改中断的位置或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:
而cyclenumb您需要分别中断每个循环,正如人们在您问题的评论中提到的那样,中断
只会停止它所在的循环
for x in userpassword[k]:
for z in lowercaselist:
if x in z:
newpasswordlist.append(z)
k +=1
break
if x in z: # added an extra condition to exit the main loop
break
您需要对两个循环执行此操作
如果您还想中断while循环,那么您可以在该循环中添加If x in z:break
。break
仅中断内部循环,而不是外部循环。你确定你需要内环吗?也许它应该是,如果第一眼看到小写字母中的x,你的缩进似乎不正确。如果x在z中,第一个与第一个相反吗?然后,它应该缩进到与第一个if相同的级别。第三个for语句是否在那下面?然后,所有内容都应该比其他内容缩进更深一级。小写字母列表
和大写字母列表
的值是多少?它们是列表的列表吗?这就是当你在它们上面循环,然后在z中使用x
时的样子。巴尔马,它们是包含字母表小写和大写的列表,例如“a”,“b”,那么为什么你在z中使用x
而不仅仅是x=z
?或者你为什么不直接用小写字母写x:
?是的,这意味着索引对于列表来说太大了,例如,如果你有一个由4个元素组成的列表,你试图得到列表[5]
,它会给出一个错误,因为没有第5个元素谢谢,我能够解决索引问题,但是现在,在我在if语句的最后一个k+=1之后添加了print newpasswordlist函数之后,它会打印z twice的值谢谢,先生,我会在我的程序中添加这个函数和我的多个其他for循环,希望它能工作