Top.Mail.Ru
Ответы

Шибка 107 в PyCharm пытаюсь запустить код в PyCharm и вылетает ошибка 107. Как исправить ошибку? помогите пожалуйста

вот код
import sys
import re
from PyQt6 import QtWidgets, QtCore


class RegistrationApp(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.init_ui()

def init_ui(self):
self.setWindowTitle("Регистрация пользователя")
self.setGeometry(100, 100, 300, 200)

# Создание элементов интерфейса
self.email _label = QtWidgets.QLabel("Электронная почта:")
self.email _input = QtWidgets.QLineEdit()

self.password_label = QtWidgets.QLabel("Пароль:")
self.password_input = QtWidgets.QLineEdit()
self.password_input.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password)

self.confirm_password_label = QtWidgets.QLabel("Подтвердите пароль:")
self.confirm_password_input = QtWidgets.QLineEdit()
self.confirm_password_input.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password)

self.register_button = QtWidgets.QPushButton("Зарегистрироваться")
self.register_button.clicked.connect(self.register)

# Упаковка элементов в вертикальный layout
layout = QtWidgets.QVBoxLayout()
layout.addWidget( self.email _label)
layout.addWidget( self.email _input)
layout.addWidget(self.password_label)
layout.addWidget(self.password_input)
layout.addWidget(self.confirm_password_label)
layout.addWidget(self.confirm_password_input)
layout.addWidget(self.register_button)

self.setLayout(layout)

def register(self):
email = self.email _input.text()
password = self.password_input.text()
confirm_password = self.confirm_password_input.text()

if not self.validate_email(email):
QtWidgets.QMessageBox.warning(self, "Ошибка", "Неверный формат электронной почты.")
return

if password != confirm_password:
QtWidgets.QMessageBox.warning(self, "Ошибка", "Пароли не совпадают. Попробуйте снова.")
self.password_input.clear()
self.confirm_password_input.clear()
return

if len(password) < 6:
QtWidgets.QMessageBox.warning(self, "Ошибка", "Пароль должен содержать не менее 6 символов.")
self.password_input.clear()
self.confirm_password_input.clear()
return

# Здесь можно добавить код для сохранения данных в базу данных
QtWidgets.QMessageBox.information(self, "Успех", "Регистрация прошла успешно!")

def validate_email(self, email):
# Простой регулярный выражение для проверки формата электронной почты
pattern = r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'
return re.match(pattern, email) is not None


if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
window = RegistrationApp()
window.show()
sys.exit(app.exec())

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Оракул
5мес
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
 import sys 
import re 
from PyQt6 import QtWidgets, QtCore 
 
 
class RegistrationApp(QtWidgets.QWidget): 
    def __init__(self): 
        super().__init__() 
        self.init_ui() 
 
    def init_ui(self): 
        self.setWindowTitle("Регистрация пользователя") 
        self.setGeometry(100, 100, 300, 200) 
 
        # Создание элементов интерфейса 
        self.email_label = QtWidgets.QLabel("Электронная почта:") 
        self.email_input = QtWidgets.QLineEdit() 
 
        self.password_label = QtWidgets.QLabel("Пароль:") 
        self.password_input = QtWidgets.QLineEdit() 
        self.password_input.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password) 
 
        self.confirm_password_label = QtWidgets.QLabel("Подтвердите пароль:") 
        self.confirm_password_input = QtWidgets.QLineEdit() 
        self.confirm_password_input.setEchoMode(QtWidgets.QLineEdit.EchoMode.Password) 
 
        self.register_button = QtWidgets.QPushButton("Зарегистрироваться") 
        self.register_button.clicked.connect(self.register) 
 
        # Упаковка элементов в вертикальный layout 
        layout = QtWidgets.QVBoxLayout() 
        layout.addWidget(self.email_label) 
        layout.addWidget(self.email_input) 
        layout.addWidget(self.password_label) 
        layout.addWidget(self.password_input) 
        layout.addWidget(self.confirm_password_label) 
        layout.addWidget(self.confirm_password_input) 
        layout.addWidget(self.register_button) 
 
        self.setLayout(layout) 
 
    def register(self): 
        email = self.email_input.text() 
        password = self.password_input.text() 
        confirm_password = self.confirm_password_input.text() 
 
        if not self.validate_email(email): 
            QtWidgets.QMessageBox.warning(self, "Ошибка", "Неверный формат электронной почты.") 
            return 
 
        if password != confirm_password: 
            QtWidgets.QMessageBox.warning(self, "Ошибка", "Пароли не совпадают. Попробуйте снова.") 
            self.password_input.clear() 
            self.confirm_password_input.clear() 
            return 
 
        if len(password) < 6: 
            QtWidgets.QMessageBox.warning(self, "Ошибка", "Пароль должен содержать не менее 6 символов.") 
            self.password_input.clear() 
            self.confirm_password_input.clear() 
            return 
 
        # Здесь можно добавить код для сохранения данных в базу данных 
        QtWidgets.QMessageBox.information(self, "Успех", "Регистрация прошла успешно!") 
 
    def validate_email(self, email): 
        # Простейшее регулярное выражение для проверки формата электронной почты 
        pattern = r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' 
        return re.match(pattern, email) is not None 
 
 
if __name__ == "__main__": 
    app = QtWidgets.QApplication(sys.argv) 
    window = RegistrationApp() 
    window.show() 
    sys.exit(app.exec())  
Аватар пользователя
Просветленный
5мес

А запусти не через пайчарм.
Код ошибки не очень хорошо понять, в чём ошибка. Скинь вывод программы.