如何获取输入到输入框中的信息并将其保存(转储)到文本文件中(json)
How to take information that takes entered into a entry box and save(dump) it in a text file(json)
我创建了一个程序,它应该将用户名和密码转储到 json 文件
但是我在解决它时遇到了问题
请帮忙
def createAccount():
A = tk.StringVar()
B = tk.StringVar()
root1 = Tk()
root1.resizable(0, 0)
root1.title('Signup')
instruction = Label(root1, text='Please Enter new Credentials')
instruction.grid(row=0, column=0, sticky=E)
nameL = Label(root1, text='New Username: ')
pwordL = Label(root1, text='New Password: ')
nameL.grid(row=1, column=0, sticky=W)
pwordL.grid(row=2, column=0, sticky=W)
nameE = Entry(root1, textvariable=A)
pwordE = Entry(root1, textvariable=B )
nameE.grid(row=1, column=1)
pwordE.grid(row=2, column=1)
signupButton = Button(root1, text='Signup')
signupButton.grid(columnspan=2, sticky=W)
root1.mainloop()
username = A
password = B
with open('user_accounts.json', 'r+') as user_accounts:
users = json.load(user_accounts)
if username in users.keys():
print('error')
else:
users[username] = [password, "PLAYER"]
user_accounts.seek(0)
json.dump(users, user_accounts)
user_accounts.truncate()
print("success")
我尝试使用 tk.StringVar()
将用户名和密码转换为字符串
但是显示错误
请提供任何合适的解决方案
tkinter 标签不使用正常的 Python 变量类型。相反,他们使用 tcl 类型,例如 StringVar
。要获取此类变量的值,您可以调用它们的 .get()
方法,该方法 returns 是原生 Python 值。现在您可以随心所欲地转换、更改和使用它了:)
我创建了一个程序,它应该将用户名和密码转储到 json 文件
但是我在解决它时遇到了问题
请帮忙
def createAccount():
A = tk.StringVar()
B = tk.StringVar()
root1 = Tk()
root1.resizable(0, 0)
root1.title('Signup')
instruction = Label(root1, text='Please Enter new Credentials')
instruction.grid(row=0, column=0, sticky=E)
nameL = Label(root1, text='New Username: ')
pwordL = Label(root1, text='New Password: ')
nameL.grid(row=1, column=0, sticky=W)
pwordL.grid(row=2, column=0, sticky=W)
nameE = Entry(root1, textvariable=A)
pwordE = Entry(root1, textvariable=B )
nameE.grid(row=1, column=1)
pwordE.grid(row=2, column=1)
signupButton = Button(root1, text='Signup')
signupButton.grid(columnspan=2, sticky=W)
root1.mainloop()
username = A
password = B
with open('user_accounts.json', 'r+') as user_accounts:
users = json.load(user_accounts)
if username in users.keys():
print('error')
else:
users[username] = [password, "PLAYER"]
user_accounts.seek(0)
json.dump(users, user_accounts)
user_accounts.truncate()
print("success")
我尝试使用 tk.StringVar()
将用户名和密码转换为字符串但是显示错误
请提供任何合适的解决方案
tkinter 标签不使用正常的 Python 变量类型。相反,他们使用 tcl 类型,例如 StringVar
。要获取此类变量的值,您可以调用它们的 .get()
方法,该方法 returns 是原生 Python 值。现在您可以随心所欲地转换、更改和使用它了:)