鱼C论坛

 找回密码
 立即注册
查看: 2313|回复: 4

[已解决]请问Python里面的 break 和 continue 怎么用

[复制链接]
发表于 2017-3-28 13:12:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
dict1 = dict((('hu',135),('you',136),('ping',137)))




print ('欢迎进入通讯录!')
print ('*'*20)
print ('按1:查询联系人资料')
print ('按2: 插入新的联系人')
print ('按3: 删除已有的联系人')
print ('按4:退出通讯录程序')

shuru = int(input('请输入你将要执行的操作:'))

while 1 :
   

    if shuru == 1:
        print ('下面是联系人:')
        for each in dict1:
            print (each)
        people = input('请输入你需要的联系人:')
        print (dict1[people])
        continue

    elif shuru == 2:
        new_people =input('输入新的联系人:')
        new_number =int(input('输入联系号码:'))
        dict1[new_people] = new_number
        print ('现在已有的联系人有:',dict1.keys())
        continue
   
    elif shuru == 3:
        print ('现在已有的联系人有:',dict1.keys())
        shan_people = input('输入你要删除的联系人:')
        print (dict1.pop(shan_people),'已经被删除')
        continue

    else:
        print ('退出程序')
        break


比如说我按1后,它总是在第一部分循环,而不是重新开始
   
最佳答案
2017-3-28 14:59:34
continue是终止本次循环,直接执行下一次,break是结束循环
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-3-28 14:11:17 | 显示全部楼层
导致你一直在第一部分循环不是因为continue和break
因为你的shuru在循环外输入一次后,没有重新进行输入,导致shuru的值一直不变,那么会一直运行循环的shuru==1中
continue的作用是运行到continue语句为止,不再执行循环体内continue之后的内容,进入下一次循环
break的作用是终止循环,直接结束循环,无论循环条件是否符合
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-28 14:59:34 | 显示全部楼层    本楼为最佳答案   
continue是终止本次循环,直接执行下一次,break是结束循环
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2017-3-28 15:42:35 | 显示全部楼层
sunnychou 发表于 2017-3-28 14:59
continue是终止本次循环,直接执行下一次,break是结束循环

恩 谢谢 你了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-28 15:49:48 | 显示全部楼层
给你看三个列子:
  1. for i in range(5):
  2.     print(i)
复制代码

第一个列子,直接打印i,不带任何条件判断
结果是
  1. 0
  2. 1
  3. 2
  4. 3
  5. 4
复制代码

第二个列子,在1的基础上,判断i==3就break
  1. for i in range(5):
  2.     if i ==3:
  3.         break
  4.     print(i)
复制代码

结果只打印了0,1,2
3之后的都没有打印,这说明break就是跳出循环的意思
  1. 0
  2. 1
  3. 2
复制代码

第三个列子,在1的基础上还是增加判断,这次试用continue
  1. for i in range(5):
  2.     if i == 3:
  3.         continue
  4.     print(i)
复制代码

结果是:
  1. 0
  2. 1
  3. 2
  4. 4
复制代码

看出来了么,除了3,其他都打印了,所以continue的意思就是说,循环进行到这一次的话,就不再执行这个语句之后的语句,直接跳到下一次循环

通过三个小例子应该能理解这2者的区别吧,能看懂的话,麻烦给个最佳答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-26 11:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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