Chinaunix
标题:
如何跳出当前循环进入“上一个”循环
[打印本页]
作者:
450120127
时间:
2016-01-08 23:01
标题:
如何跳出当前循环进入“上一个”循环
小弟新手,在编写ATM程序,某段代码思路如下:
修改密码:
1、输入老密码,若与老密码不同则continue
2、输入新密码,密码必须6位数字
3、再次输入新密码,密码必须6位数字
判断两次新密码是否相同,若不同,跳回2 输入新密码,然后再到3再次输入新密码。
代码如下:
while True:
choice = raw_input("Please input which of your choice: ")
if choice == "1":
while True:
oldpassword = int(raw_input("Please input your oldpassword: "))
if oldpassword != userinfo[login][0]:
print "Input error,Please input again!"
else:
global newpassword
newpassword = 0
while True:
try:
newpassword = int(raw_input("Please input your newpassword,must be six: "))
except ValueError:
print "Must be six numbers"
if len(str(newpassword)) != 6:
continue
else:
global newpasswordagain
newpasswordagain = 0
while True:
try:
newpasswordagain = raw_input("Please input your newpassword again,must be six: ")
except ValueError:
print "Must be six numbers"
if newpassword != newpasswordagain:
print "newpassword is not equal newpassword again"
复制代码
请问如何实现
判断两次新密码是否相同,若不同,跳回2 输入新密码,然后再到3再次输入新密码。
作者:
kggg
时间:
2016-01-09 21:06
while True:
choice = raw_input("Please input which of your choice: ")
if choice == "1":
while True:
inputpassword = int(raw_input("Please input your oldpassword: "))
if inputpassword != oldpassword:
print "Input error,Please input again!"
else:
break
global newpassword
newpassword = 0
while True:
newpassword = int(raw_input("Please input your newpassword,must be six: "))
if len(str(newpassword)) != 6:
print "Must be six numbers"
else:
break
global newpasswordagain
newpasswordagain = 0
while True:
newpasswordagain = int(raw_input("Please input your newpassword again,must be six: "))
if newpassword != newpasswordagain:
print "newpassword is not equal newpassword again"
else:
break
复制代码
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2