这个python登录/注册程序该怎么运行?(我对python是新手)

2024-04-19 14:24:42 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我对python还是相当陌生的(在尝试学习python之前就知道C),我想做一个小的登录/注册程序,我把它都写了下来,理论上(至少对我来说)它会起作用,但它不,它不独立地记录该帐户是否存在。。。在

如何让这个程序工作?

command = ""
username = ""
password = ""

def Register():
    global username
    global password
    username = input("Username: ")
    password = input("Password: ")

    f = open("userinfo.txt", "a")
    f.write("--------------------")
    f.write("\n%s information:\n"%(username))
    f.write("%s \n"%(username))
    f.write("%s \n"%(password))
    f.write("--------------------")

def Login():
    global username
    global password
    f = open("userinfo.txt", "r")
    f.readline()
    f.readline()
    username = f.readline()
    password = f.readline()
    f.readline()
    return username
    return password

def CheckLogin():
    global username
    global password
    global loginusername
    global loginpassword

    if loginusername == username and loginpassword == password:
        print("You´ve logged in, wait for next updates")

    elif loginusername == username and loginpassword != password:
        print("Wrong password")

    elif loginusername != username and loginpassword == password:
        print("Wrong username")

    elif loginusername != username and loginpassword != password:
        print("Wrong login information, restart the program and register to create an account")

    else:
        print("ERROR: Uknown error")


command = input("Would you like to login or register?\n")
if (command == "register"):
    Register()
    print("Done!")

elif (command == "login"):
    print("--------LOGIN--------")
    loginusername = input("Username: ")
    loginpassword = input("Password: ")
    Login()
    CheckLogin()



else:
    print("Invalid command")
    print("Please restart the program and try again")

那么,我需要制作与课堂相关的东西吗? 比如,用户是对象? 但如何保存这些数据呢?在

请帮帮我

编辑:对代码做了一些小的润色,修正了一个错误,但现在我有其他。。。在


Tags: andinputreadlinedefusernameloginpasswordglobal
1条回答
网友
1楼 · 发布于 2024-04-19 14:24:42

这是你的问题:

if (loginusername == username , loginpassword == password):

这将创建一个包含两个布尔值的元组,并询问该元组是否真实。因为它不是空的,它是空的。因此,此if语句的主体始终执行。在

你想要:

^{pr2}$

你在其他地方也犯了同样的错误。在

注意:您不需要将条件括在if语句的括号中。在

相关问题 更多 >