免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2420 | 回复: 1
打印 上一主题 下一主题

如何跳出当前循环进入“上一个”循环 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-01-08 23:01 |只看该作者 |倒序浏览
小弟新手,在编写ATM程序,某段代码思路如下:
修改密码:
1、输入老密码,若与老密码不同则continue
2、输入新密码,密码必须6位数字
3、再次输入新密码,密码必须6位数字
判断两次新密码是否相同,若不同,跳回2 输入新密码,然后再到3再次输入新密码。
代码如下:
  1. while True:
  2.     choice = raw_input("Please input which of your choice: ")
  3.     if choice == "1":
  4.         while True:
  5.             oldpassword = int(raw_input("Please input your oldpassword: "))
  6.             if oldpassword != userinfo[login][0]:
  7.                 print "Input error,Please input again!"
  8.             else:
  9.                 global newpassword
  10.                 newpassword = 0
  11.                 while True:
  12.                     try:
  13.                         newpassword = int(raw_input("Please input your newpassword,must be six: "))
  14.                     except ValueError:
  15.                                                 print "Must be six numbers"
  16.                     if len(str(newpassword)) != 6:
  17.                         continue
  18.                     else:
  19.                         global newpasswordagain
  20.                         newpasswordagain = 0
  21.                         while True:
  22.                             try:
  23.                                 newpasswordagain = raw_input("Please input your newpassword again,must be six: ")
  24.                             except ValueError:
  25.                                 print "Must be six numbers"
  26.                             if newpassword != newpasswordagain:
  27.                                 print "newpassword is not equal newpassword again"
复制代码
请问如何实现
判断两次新密码是否相同,若不同,跳回2 输入新密码,然后再到3再次输入新密码。

论坛徽章:
0
2 [报告]
发表于 2016-01-09 21:06 |只看该作者
  1. while True:
  2.     choice = raw_input("Please input which of your choice: ")
  3.     if choice == "1":
  4.         while True:
  5.             inputpassword = int(raw_input("Please input your oldpassword: "))
  6.             if inputpassword != oldpassword:
  7.                 print "Input error,Please input again!"
  8.             else:
  9.                 break
  10.         global newpassword
  11.         newpassword = 0
  12.         while True:
  13.             newpassword = int(raw_input("Please input your newpassword,must be six: "))
  14.             if len(str(newpassword)) != 6:
  15.                 print "Must be six numbers"
  16.             else:
  17.                 break
  18.         global newpasswordagain
  19.         newpasswordagain = 0
  20.         while True:
  21.             newpasswordagain = int(raw_input("Please input your newpassword again,must be six: "))
  22.             if newpassword != newpasswordagain:
  23.                 print "newpassword is not equal newpassword again"
  24.             else:
  25.                 break
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP