Python 小技巧,如何跳出多层for循环

背景:

        在学习 JavaScript 的时候,看到 JS 中有 label 语句,一般都用于 for 循环,由 continue 或 break 引用;使用 label 语句可以方便跳出 for 的多层循环;然后想到 Python 要如何实现 for 循环的多层跳出呢?以前一直没有考虑这个问题。

 

巧用 for ... else ... 解决(也是参考了https://blog.csdn.net/u012814856/article/details/78723071)   

        首先看下 for ... else ... 的用法,else 是在 for 循环完成之后才运行的;

        >>> for i in range(3):
         ...     print(i)
         ... else:
         ...     print('else content')

         ...
         0
         1
         2
        else content

        如果我们在 for 循环中使用了 break 会怎么用?

        >>> for i in range(3):
        ...     break
        ... else:
        ...     print('else content')
        ...

 

        可以看到 'else content' 并没有输出,也就是说没有运行 else 语句。       

        可以将这个特性用于跳出 for 的多层循环:

        >>> num = 0
        >>> for i in range(10):
         ...     for j in range(10):
         ...             if i==5 and j==5:
         ...                     break
         ...             num += 1
         ...     else:
         ...             continue
         ...     break
         ...
        >>> num
         55

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值