因此,我正在创建一个帐户登录系统,该系统将在数据库中搜索用户名(及其相关密码),如果找到该用户名,则会将该用户登录。
这是csv文件当前的样子
['dom','输入密码']
它被写入一个字段(在excel电子表格上),并且在用户注册时被写入文件中。但是,当我尝试登录时,只有在输入了dom的情况下我才希望登录时,该程序才会登录。
以下是读取csv文件的代码,以查看是否在文件中找到了用户名/密码:
def Get_Details():
user_namev2=user_name.get().lower() #Make it so entry box goes red if passwords password is incorrect, and red if username is incorrect/not fault
user_passwordv2=user_password.get().lower()
with open ('Accounts.csv', 'r') as Account_file:
reader = csv.reader(Account_file)
for row in reader:
for field in row:
if field == user_namev2:
print ("In file")
这是注册帐户后如何将用户名和密码写入csv文件。
if re.match(user_password2v2, user_passwordv2):
print("Passwords do match")
user_info = []
user_info.append(user_namev2)
user_info.append(user_passwordv2)
with open ('Accounts.csv', 'a') as Account_file:
writer = csv.writer(Account_file)
writer.writerow([user_info])
Bottom()
关于如何搜索csv文件以便仅搜索字符串的特定部分并与user_namev2
匹配的任何想法
答案 0 :(得分:0)
假设user_namev2
是dom
列中的内容,而user_passwordv2
是enter password
列中的内容,我将对{{ 1}}位于username
列中。
dom
注意:我还选择将每个import regex
with open ('Accounts.csv', 'r') as Account_file:
reader = csv.reader(Account_file)
for row in reader:
if re.findall(user_namevv2[0:5],row[0]): #slice a part of the user name
print ("In file")
的第一个元素与row
一起使用,因为这是row[0]
列。