Как загрузить имя пользователя из CSV-файла? - PullRequest
0 голосов
/ 27 февраля 2019

Я узнал о создании файлов с использованием 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")

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 28 февраля 2019

Ваш 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")

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...