如何从csv文件加载用户名?

2024-04-20 08:59:51 发布

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

我在学校的计算机科学课上学会了用python创建文件。我已经创建了一段代码,你可以创建一个用户名和密码,然后它保存到一个csv文件。还有另一个可以登录的选项。它要求您输入用户名,如果输入错误,它会显示“找不到用户名”。无论我输入什么(即使它是正确的),它说用户名找不到。 这是代码的主要部分:

Log = input("Enter Choice here: ")
if Log == "Log In" or Log == "log in" or Log == "Log in" or Log == "log In":
    Data = open("F:\\'Filename'.csv", "r")
    SavedUser = Data.readline()
    Username = input("Username: ")
    if Username == SavedUser:
        print("Welcome", Username, "!")
        Password = input("Password: ")
        if Password == Data.readline():
            print("It works")

谢谢你的帮助。你知道吗


Tags: or文件csv代码inloginputdata
1条回答
网友
1楼 · 发布于 2024-04-20 08:59:51

您的CSV文件可能没有正确读取。Python有一个csv库来正确解析csv文件。您可以将CSV文件读入字典,然后比较用户名和密码。你知道吗

import csv
action = input("Enter Choice here: ")
if action.lower() == "Log In".lower(): #Convert both strings two lowercase and then compare
    reader = csv.reader(open('demo.csv', 'r')) #parsing the csv file correctly
    user_dict = dict(reader) #converting iterable reader directly to a dictionary
    #{'abc': 'abc123', 'username': 'password'}
    username_input = input("Username:")
    if username_input in user_dict: #check if username exists as a key in the dictionary
        print("Welcome", username_input, "!")
        password_input = input("Password: ")
        if password_input == user_dict[username_input]:
            print("It works")

相关问题 更多 >