创建一个python文件,要求用户4位pin



我有一个分配,我必须要求用户提供4位数的pin。正确的pin是1234。在用户被锁定之前,我必须给他们3次。我还必须添加一个break语句。下面是输出的示例:

请输入pin码:1112

不正确的。请重新输入:1112

不正确的。请重新输入:1234

正确的。我代码:

def verify_pin(pin)
if pin == "1234"
return True
else:
return False
tries = 3
while counter < 3:
pin = input("please enter your pin code")
if verify_pin(pin)     
print("Correct")
break
elif 
print("Incorrect.Please enter again: ")
tries +=1  

我收到一个无效的语法。我根本不知道我在做什么,但我真的很想理解和学习。请帮助。

你接近了,但是你的代码有一些问题(主要是缩进问题,如注释中提到的)。像这样的代码应该可以工作:

desired_pin = '1234'
max_tries = 3

def verify_pin(the_pin):
return the_pin == desired_pin

def main():
tries = 0
while tries < max_tries:
pin = input('please enter your pin code: ')
if verify_pin(pin):
print('Correct')
break
else:
print('Incorrect. Please enter again: ')
tries += 1
else:   # Else will run when no `break` statement is run in while loop.
print("I am LOCKIN' you out now!")

if __name__ == '__main__':
main()

样本互动:

please enter your pin code: 111
Incorrect. Please enter again: 
please enter your pin code: 222
Incorrect. Please enter again: 
please enter your pin code: 123
Incorrect. Please enter again: 
I am LOCKIN' you out now!

您犯了一些缩进和语法错误。我做了一些更改,请将此与您的代码进行比较,您可以理解差异


def verify_pin(pin):
if pin == "1234":
return True
else:
return False
tries = 0
while tries < 3:
pin = input("please enter your pin code")
if verify_pin(pin):    
print("Correct")
break
else:
print("Incorrect.Please enter again: ")
tries +=1 

语法&缩进问题请检查以下代码

def verify_pin(pin):
if pin == "1234":
return True
else:
return False

tries = 0
while tries < 3:
pin = input("please enter your pin code")
if verify_pin(pin):
print("Correct")
break
else:
print("Incorrect.Please enter again: ")
at = 2 - tries
print("You Have %s More Attempt Remaining" % at)
tries += 1

最新更新