(Python) 创建一个基本的“请输入密码”程序

0 投票
4 回答
9167 浏览
提问于 2025-04-17 21:02

我正在尝试创建一个简单的程序,要求用户输入密码,然后再输入一次。如果两次输入的密码一致,就会显示“密码创建成功”。如果不一致,程序会继续让用户重新输入,直到密码匹配为止。

这是我目前写的代码;我知道需要用到循环和至少一个“如果”语句,但我不知道该怎么做。

password=raw_input("please select a password")
password_again=raw_input("please re-type your password")
loop=raw_input("Password does not match. Please try again")
if password_again==password:
      print("password created")
else: raw_input(loop)

希望能得到一些帮助!

4 个回答

0

最简单的方法就是使用 iter 这个函数,像这样:

password = raw_input("please select a password")
for re_password in iter(raw_input, password):
    print "Password does not match. Please try again :",
print "Password accepted!"
0

这不是一个循环,应该使用 while Truebreak 来实现:

while True:
    password=raw_input("please select a password")
    password_again=raw_input("please re-type your password")
    if password_again==password:
        print("password created")
        break
    else:
        print "Password does not match. Please try again"
0

这是学习while循环的一个好方法

先询问需要的数值

password=raw_input("please select a password")
password_again=raw_input("please re-type your password")

然后循环,直到它们匹配为止

while password_again != password:
    print "They don't match please try again"
    password=raw_input("please select a password ")
    password_again=raw_input("please re-type your password ")
1

我觉得使用getpass模块是个明智的选择:它会在用户输入密码时,不显示输入的内容。

from getpass import getpass

print "Please select a password: "
passwd = getpass()

print "Please re-type your password: "
if passwd == getpass():
    print "password created"
else:
    print "Password does not match. Please try again"

输出:

Please select a password:
Password:
Please re-type your password:
Password:
Password does not match. Please try again

撰写回答