一、问题描述:
大多数人在遍历时会使用for双层循环语句,在内层循环中使用break语句时,只跳出内层循环体。怎么跳出双层循环呢?
二、解决方案:
内循环正常结束才会运行else语句,如果执行if语句中的break语句,会跳出当前循环体for j,else语句也不会执行。当for j...循环体正常结束时,else语句块中continue语句,跳出本次循环体for i中未执行的语句break,立即进行下一次的循环条件判定。
break:跳出一个循环体或者完全结束一个循环
continue:跳过本次循环体中剩下尚未执行的语句,立即进行下一次的循环条件判定
#两个字符串只要判断有相同字符退出整个循环体
s = "123"
s1 = "1b1"
for i in s:
for j in s1:
if i == j:
print(i)
break
else:
continue
break
三、案例
判断字符串长度是否大于等于10个,条件满足时再判断字符串中是否有重复数据,如果有重复数据退出双层循环。
#判断字符串长度是否大于等于10个,条件满足时再判断字符串中是否有重复数据,如果有重复数据退出双层循#环。
str1 = "qwaxdz18752"
num = 1
l = len(str1)
if l >= 10:
print("str1字符串中不少于10个字符")
for i in str1[0:(l-1):1]:
for j in str1[num:l:1]:
if i == j:
print(f"字符串中存在重复数据,重复数据为:{i}")
break
else:
if num == l-1:
print("字符串中不存在重复数据")
else:
num = num + 1
continue
break
else:
print("str1字符串中少于10个字符")
print(f'{str1=}')
到此这篇关于python跳出双层循环的方法的文章就介绍到这了,更多相关python跳出双层循环内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!