메모장에서 작업 시스템의 데이터가 들어있는 데이터베이스로 tkinter에 암호 시스템을 만들려고하지만 입력 필드에 데이터를 삽입 할 때 오류가 발생합니다. 실패했습니다 .txt 파일을 만들었지 만 파일에서 파일을 읽을 수 없습니다.이 작업을 수행하는 방법에 대한 제안. 파일에서 데이터를 읽는 tkinter에서 암호 시스템을 만드는 방법
import tkinter as tk
import sys
from tkinter import messagebox
now = open("passdoc.txt","w+")
now.write("user\n")
now.write("python3")
now.close()
def login_in():
with open("passdoc.txt") as f:
new = f.readlines()
name = new[0].rstrip()
password = new[1].rstrip()
if entry1.get() == new[0] in passdoc.txt and entry2.get() == new[1] in
passdoc.txt:
root.deiconify()
log.destroy()
else:
messagebox.showerror("error","login Failed")
def close():
log.destroy() #Removes toplevel window
root.destroy() #Removes root window
sys.exit() #Ends the script
root=tk.Tk()
log = tk.Toplevel() #
root.geometry("350x350")
log.geometry("200x200")
entry1 = tk.Entry(log) #Username entry
entry2 = tk.Entry(log) #Password entry
button1 = tk.Button(log, text="Login", command=login_in) #Login button
button2 = tk.Button(log, text="Cancel", command=close) #Cancel button
label1 = tk.Label(root, text="tkinter password system")
entry1.pack()
entry2.pack()
button1.pack()
button2.pack()
label1.place(x=30,y=300)
label = tk.Label(root, text="welcome").pack()
root.withdraw()
root.mainloop()
은 나도이 기능을 만들었지 만 모두 당신은 몇 가지 작업을 필요로하지만 주요 문제는 당신 login_in()
기능에 코드에서 몇 가지를 가지고 나
def login_in():
with open("passdoc.txt") as f:
new = f.readlines()
name = new[0].rstrip()
password = new[1].rstrip()
if entry1.get() == name in passdoc.txt and entry2.get() == password in
passdoc.txt:
root.deiconify()
log.destroy()
else:
messagebox.showerror("errror","login failed") #error login failed
(corrections)
버튼을 눌렀을 때 이름과 비밀번호의 내용을 확인하려고 했습니까? 이 두 줄 바로 아래에 print 문을 추가하여 확인할 수 있습니다. – Lafexlos
또한 if 문은 잘못되었습니다. 이 코드에서 NameError를 해당 줄에 가져와야합니다. – Lafexlos