Форум сайта python.su
Не могу разобраться в pickle, хелп. (в def save())
#coding: utf-8 from tkinter import * from tkinter import messagebox import pickle passs = 0 loggg = 0 root = Tk() root.geometry("300x500") root.title("Вход/регистрация") def log (): global e2 global e3 global b2 global e global reg t = Label(root, text = "Зарегистрируйтесь для входа", font="Arial 16") t.pack() t1 = Label(root, text = "Логин:", font="Arial 10") t1.pack() e = Entry() e.pack() t2 = Label(root, text = "Пароль:", font="Arial 10") t2.pack() e2 = Entry(show="*") e2.pack() t3 = Label(root, text = "Повторите пароль:", font="Arial 10") t3.pack() e3 = Entry(show="*") e3.pack() reg = Button(root, text="Зарегистрироваться", overrelief="sunken", command = lambda: check()) reg.pack() b2 = Button(root, text="Раскрыть пароль", command = lambda: offe(), overrelief="sunken") b2.pack() def offe(): e2.config(show="") e3.config(show="") b2.config(command = lambda: offe2(), text="Раскрыть пароль") def offe2(): e2.config(show="*") e3.config(show="*") b2.config(command = lambda: offe(), text = "Скрыть пароль") def check(): if(e.get() == "" or e3.get() == "" or e2.get() == ""): messagebox.showwarning("Ошибка", "Вы должны заполнить все пустые поля.") if e.get() == "" and e2.get() == "" and e3.get() == "": e.config(bg="orange") e2.config(bg="orange") e3.config(bg="orange") elif e.get() == "" and e2.get() == "": e.config(bg="orange") e2.config(bg="orange") e3.config(bg="white") elif e.get() == "" and e3.get() == "": e.config(bg="orange") e3.config(bg="orange") e2.config(bg="white") elif e.get() == "": e.config(bg="orange") e2.config(bg="white") e3.config(bg="white") elif e2.get() == "" and e3.get() == "": e2.config(bg="orange") e3.config(bg="orange") e.config(bg="white") elif e2.get() == "" and e.get() == "": e2.config(bg="orange") e.config(bg="orange") e3.config(bg="white") elif e2.get() == "": e2.config(bg="orange") e.config(bg="white") e3.config(bg="white") elif e3.get() == "" and e.get() == "": e3.config(bg="orange") e.config(bg="orange") e2.config(bg="white") elif e3.get() == "" and e2.get() == "": e2.config(bg="orange") e3.config(bg="orange") e.config(bg="") elif e3.get() == "": e3.config(bg="orange") e2.config(bg="white") e.config(bg="white") else: if e3.get() == e2.get(): e.config(state=DISABLED) reg.config(state=DISABLED) e3.config(state=DISABLED) e2.config(state=DISABLED) e.config(disabledbackground="white", disabledforeground="black") e3.config(disabledbackground="#32CD32", disabledforeground="black", show="*") e2.config(disabledbackground="#32CD32", disabledforeground="black", show="*") global save save() else: e3.config(state=NORMAL) e.config(bg="white") e2.config(state=NORMAL) e3.config(background="red") e2.config(background="red") messagebox.showerror("Ошибка", "Пароли не совпадают!") def save(): sev_pass = {e3.get()} sev_pass [e3.get()] = e2.get() sev_login = {e.get()} file = open("logins.txt", "wb") pickle.dump(sev_pass, sev_login, file) file.close() password() def password (): file = open("logins.txt", "rb") sev_pass = pickle.load(file) sev_login = pickle.load(file) sev_pass, sev_login file.close() t1 = Label(root, text = "Вход в систему", font="Arial 16") t1.pack() global e21 global e31 global b2 global e1 global e21 t11 = Label(root, text = "Логин:", font="Arial 10") t11.pack() e1 = Entry() e1.pack() t21 = Label(root, text = "Пароль:", font="Arial 10") t21.pack() e21 = Entry(show="*") e21.pack() reg1 = Button(root, text="Вход", overrelief="sunken", command = lambda: logged()) reg1.pack() b21 = Button(root, text="Раскрыть пароль", command = lambda: offe1(), overrelief="sunken") b21.pack() def offe1(): e21.config(show="") b21.config(command = lambda: offe21(), text="Раскрыть пароль") def offe21(): e21.config(show="*") b21.config(command = lambda: offe1(), text = "Скрыть пароль") def logged(): if sev_pass == e21 and sev_login == e1: success = Label(text = "Вы успешно вошли в аккаунт", fg ="green") messagebox.showinfo("Успешно", "Вы вошли в аккаунт.") e1.config(disabledbackground="green") e21.config(disabledbackground="green") else: messagebox.error("Ошибка", "Неверный логин/пароль!") log() root.mainloop()
Отредактировано Fedy1661 (Ноя. 3, 2017 17:18:28)
Офлайн
Fedy1661
Вопрос то в чем?
Офлайн
FishHookКак записывать и читать файл
Fedy1661Вопрос то в чем?
Офлайн
Fedy1661Так написано же
Как записывать и читать файл
Офлайн