Python登录注册功能
# -*- coding: utf-8 -*- """ Created on Thu Jul 25 13:43:28 2024 """ from tkinter import * from tkinter import messagebox from main import * # 导入“功能导航”(main.py) import csv # 导入CSV文件操作库 # 全局变量 usr = '' pwd = '' exist = False # 修正为正确的布尔值表示 def form_logreg(): def check(): # 验证用户功能 global usr, pwd, exist with open(r'data/user.csv', 'r') as fu: reader = csv.reader(fu) for row in reader: usr, pwd = row if usr == entry_usr.get(): exist = True break # 修正:关闭文件 fu.close() def login(): # 登录功能 check() if exist == False: # 修正为正确的布尔值比较 messagebox.showwarning('用户不存在') else: if pwd != entry_pwd.get(): messagebox.showwarning('密码错误') else: master.destroy() # 修正:关闭窗体 appvar.setID(usr) # 保存当前登录用户的账号 form_main() # 进入商品功能导航的窗体 def register(): # 注册功能 check() if exist == True: # 修正为正确的布尔值比较 messagebox.showwarning('账号已经注册') else: tup_user = (entry_usr.get(), entry_pwd.get()) with open(r'data/user.csv', 'a') as fu: # 追加到文件尾部 writer = csv.writer(fu) writer.writerow(tup_user) # 修正:关闭文件 fu.close() messagebox.showinfo('注册成功!') # 创建主窗体 master = Tk() master.geometry('320x250') # 修正:几何参数格式 master.title('用户登录') # 创建用户名输入框 Label(master, text='用户名:').pack() entry_usr = Entry(master) entry_usr.pack() # 创建密码输入框 Label(master, text='密码:').pack() entry_pwd = Entry(master, show='*') entry_pwd.pack() # 创建登录按钮 Button(master, text='登录', command=login).pack() # 创建注册按钮 Button(master, text='注册', command=register).pack() # 运行主事件循环 master.mainloop() # 假设 form_main 是你之前定义的函数,这里调用它来模拟进入主窗体 def form_main(): print("进入主窗体") # 假设 appvar 是你之前定义的全局变量或类,这里调用它来模拟设置用户ID class appvar: @staticmethod def setID(id): print(f"用户ID设置为:{id}") # 运行登录注册窗体 form_logreg()#python#
Python 文章被收录于专栏
Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆于1990年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言,随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发