yuanting 发表于 2022-8-10 16:24

python学习之字典以及pickle设计登录界面

本帖最后由 yuanting 于 2022-8-10 18:36 编辑

python学习简单设计一个登录界面
设计思路
首先通过tkinter来设计一个简单的登录ui
然后通过pickle来进行账号密码存储
设计一个登录函数:
1.获取entry输入框里面的账号密码
2.异常处理获取pickle库里面的数据,如果不存在pickle就去生成一个。
3.通过if去比较,不同条件做出不同的应对。
代码如下
import tkinter
import tkinter.messagebox
import pickle
from PIL import Image, ImageTk
def usr_log_in():
    name=entry_name.get()
    pwd=entry_pwd.get()
    try:
      with open('E:p\\usr_info.pickle', 'rb') as usr_file:
            usrs_info = pickle.load(usr_file)
    except FileNotFoundError:
      with open('E:p\\usr_info.pickle', 'wb')as usr_file:
            usrs_info = {'admin': 'admin'}
            pickle.dump(usrs_info,usr_file)
    if name in usrs_info:
      if pwd==usrs_info:
            tkinter.messagebox.showinfo(title='welcome',message='欢迎您:'+name)
      else:
            tkinter.messagebox.showerror(message='密码错误')
    elif name=='' or pwd=='':
      tkinter.messagebox.showerror(message='用户名或密码为空')
    else:
      is_signup=tkinter.messagebox.askyesno('欢迎','您还没有注册,是否现在注册')
root = tkinter.Tk()
root.title('欢迎进入云学习平台')
root.geometry('600x400+300+150')
canvas = tkinter.Canvas(root, height=400, width=600)
img = Image.open('E:p/ledo.png')
img1 = img.resize((600, 400), Image.ANTIALIAS)
img_root = ImageTk.PhotoImage(img1)
canvas.create_image(300, 200, image=img_root)
canvas.pack(side='top')
label1 = tkinter.Label(root, text="用户名:", bg="white", font=('宋体', 12), fg='black').place(x=300, y=150)
label2 = tkinter.Label(root, text="密码:", bg="white", font=('宋体', 12), fg='black').place(x=300, y=200)
entry_name = tkinter.Entry(root)
entry_name.place(x=400, y=150)
entry_pwd = tkinter.Entry(root)
entry_pwd.place(x=400, y=200)
button1 = tkinter.Button(root, text='登录', font=('宋体', 12), fg='black', command=usr_log_in).place(x=330, y=270)
button2 = tkinter.Button(root, text='退出', font=('宋体', 12), fg='black').place(x=450, y=270)
root.mainloop()

yuanting 发表于 2022-8-10 17:15

by:zhazha 发表于 2022-8-10 17:05
发帖的时候没用代码模块吗,那样好看点

不熟悉,没去看{:1_908:}

yuanting 发表于 2022-8-11 13:15

kkwww1986 发表于 2022-8-11 09:58
想学习 python,可有视频教程类的啊,请问

可以去b站上找找吧,或者自己买点书自学得了

wukexingxing 发表于 2022-8-10 16:42

学习学习哦

bsm110 发表于 2022-8-10 16:45

学习下,谢谢楼主分享

17373437865 发表于 2022-8-10 16:53

厉害了哈哈哈哈哈

by:zhazha 发表于 2022-8-10 17:05

发帖的时候没用代码模块吗,那样好看点

earlc 发表于 2022-8-10 17:26

没有语法着色,看起来有点难受{:1_908:}

ypf0856 发表于 2022-8-10 21:46

感谢分享

notifier 发表于 2022-8-10 22:40

很不错,支持下。

zclandy520 发表于 2022-8-11 00:03

谢谢分享
页: [1] 2
查看完整版本: python学习之字典以及pickle设计登录界面