亲宝软件园·资讯

展开

python跳出双层循环的方法

雪初学者 人气:0

一、问题描述:

大多数人在遍历时会使用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=}')

加载全部内容

相关教程
猜你喜欢
用户评论