Вопрос задан 02.07.2023 в 23:14. Предмет Информатика. Спрашивает Барневич Сергей.

Помогите скажите в чем ошибка в этом коде : from tkinter import * from tkinter import messagebox

import pickle HEIGHT = 550 WIDTH = 550 def registration(): label_error = None frame = Frame(root, bd=10) frame.place(relx=0.5, rely=0.2, relwidth=0.7, relheight=0.6, anchor='n') label = Label(frame, text='Sign Up', font='16') label.place(relwidth=1, relheight=0.1) label_login = Label(frame, text='Login: ') label_login.place(rely=0.2, relwidth=0.35,relheight=0.1) login_register = Entry(frame) login_register.place(relx=0.4, rely=0.2, relheight=0.1, relwidth=0.55) def signup(): nonlocal label_error error = '' if label_error: label_error.destroy() if len(login_register.get()) == 0: error = '*login error' elif len(password1.get()) button = Button(frame, text='Sign in',command=lambda: login_pass()) File "D:/Шаг/Средний/486/1.py", line 60, in login_pass a = pickle.load(f) EOFError: Ran out of input
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Колесник Вика.

у вас exception в функции / методе login_pass, из-за EOF.

судя по всему там делается pickle.load(f), где f -- файловый объект, в нем, как я догадываюсь, ваш какой-то сериализованный пиклом объект. скорее всего он поврежден :)

а вообще есть stackoverflow для таких вопросов, и желательно кидать код форматированным, и с нормальным стектрейсом и логами какими-нибудь :)

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

В коде, который вы предоставили, есть несколько синтаксических и структурных ошибок, а также недостающие фрагменты кода. Вот исправленный и комментированный код:

python
from tkinter import * from tkinter import messagebox import pickle HEIGHT = 550 WIDTH = 550 # Создание главного окна root = Tk() root.title("Registration") # Функция регистрации def registration(): def signup(): nonlocal label_error error = '' if label_error: label_error.destroy() if len(login_register.get()) == 0: error = '*login error' elif len(password1.get()) == 0: # Добавлена закрывающая скобка и двоеточие error = '*password error' if error: label_error = Label(frame, text=error, fg='red') label_error.place(rely=0.7, relwidth=1) # Установлено положение ошибки на форме else: # Добавьте код для сохранения данных регистрации (логин, пароль и т. д.) # Например, можно использовать библиотеку pickle для сохранения данных в файл frame = Frame(root, bd=10) frame.place(relx=0.5, rely=0.2, relwidth=0.7, relheight=0.6, anchor='n') label = Label(frame, text='Sign Up', font='16') label.place(relwidth=1, relheight=0.1) label_login = Label(frame, text='Login: ') label_login.place(rely=0.2, relwidth=0.35, relheight=0.1) login_register = Entry(frame) login_register.place(relx=0.4, rely=0.2, relheight=0.1, relwidth=0.55) label_password = Label(frame, text='Password: ') # Добавлено поле для ввода пароля label_password.place(rely=0.4, relwidth=0.35, relheight=0.1) password1 = Entry(frame, show='*') # Поле ввода пароля с заменой символов на * password1.place(relx=0.4, rely=0.4, relheight=0.1, relwidth=0.55) button = Button(frame, text='Sign up', command=signup) button.place(rely=0.6, relwidth=0.5, relheight=0.1, relx=0.25) # Добавлены координаты для кнопки # Запуск функции регистрации registration() # Запуск главного цикла обработки событий root.mainloop()

Помимо исправления синтаксических ошибок и недостающих фрагментов кода, были добавлены комментарии для обозначения изменений. Вам также нужно будет добавить код для сохранения данных регистрации, например, с использованием библиотеки pickle.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос