鱼C论坛

 找回密码
 立即注册
查看: 1484|回复: 5

[已解决]请问如何break跳出多重循环

[复制链接]
发表于 2019-4-18 22:19:16 | 显示全部楼层 |阅读模式
1鱼币
python中有一个while循环,while循环中有一个for循环,for循环中还有一个if判断语句,如果if判断为else: break,希望能够直接跳出while循环,但是发现这样写它会继续执行while循环,希望咨询大家一下应该怎么修改呢?谢谢啦!
  1. while True:
  2.      x=[]
  3.      y=[]
  4.      for eL in allLines:
  5.              xy=eL.split()
  6.              del xy[1:2*n]
  7.              if len(xy)>6:
  8.                    x.append(float(xy[0]))
  9.                    y.append(float(xy[1]))
  10.              else:
  11.                    break
复制代码
最佳答案
2019-4-18 22:19:17
本帖最后由 yjsx86 于 2019-4-18 22:38 编辑

一般解决办法是加个变量来判断

  1. flag = True
  2. while flag:
  3.     x=[]
  4.     y=[]
  5.     for eL in allLines:
  6.         xy=eL.split()
  7.         del xy[1:2*n]
  8.         if len(xy)>6:
  9.             x.append(float(xy[0]))
  10.             y.append(float(xy[1]))
  11.         else:
  12.             flag = False
  13.             break
复制代码

最佳答案

查看完整内容

一般解决办法是加个变量来判断
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-18 22:19:17 | 显示全部楼层    本楼为最佳答案   
本帖最后由 yjsx86 于 2019-4-18 22:38 编辑

一般解决办法是加个变量来判断

  1. flag = True
  2. while flag:
  3.     x=[]
  4.     y=[]
  5.     for eL in allLines:
  6.         xy=eL.split()
  7.         del xy[1:2*n]
  8.         if len(xy)>6:
  9.             x.append(float(xy[0]))
  10.             y.append(float(xy[1]))
  11.         else:
  12.             flag = False
  13.             break
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-18 22:24:33 | 显示全部楼层
没办法。用goto吧
https://blog.csdn.net/C_chuxin/article/details/83687064
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-18 22:47:59 | 显示全部楼层
yjsx86 发表于 2019-4-18 22:36
一般解决办法是加个变量来判断

好方法
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-19 07:08:11 From FishC Mobile | 显示全部楼层
break只能跳出当前循环,不会一下就跳到最外层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-19 09:11:33 | 显示全部楼层
可以放到一个函数里。
  1. def fun():
  2.     for i in range(10):
  3.         print('外层循环, i = %d'%i)
  4.         for j in range(10):
  5.             print('内层循环, j = %d'%j)
  6.             if j >= 1:
  7.                 return
  8. fun()
  9. print('退出循环')
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-3 02:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表