return
, который возвращает значение из функци.def login_check ():
N = name_entry.get()
if len(str(N)) > 20:
l20 = Label( text = ' это имя слишком длинное ', font = 'Consolas' )
l20.grid( row = 13, column = 0, padx = 1, pady = 1 )
print("l1")# Эта строка что бы я видел сработала ли функция
login_p = False
elif len(str(N)) < 3:
l3 = Label( text = ' это имя слишком короткое ', font = 'Consolas' )
l3.grid( row = 13, column = 0, padx = 1, pady = 1 )
print("l2")# Эта строка что бы я видел сработала ли функция
login_p = False
else:
l0 = Label( text = ' ', font = 'Consolas' )
l0.grid( row = 13, column = 0, padx = 1, pady = 1 )
print("l3")# Эта строка что бы я видел сработала ли функция
login_p = True
return login_p
def Ввод ( event ):
TWp = TWpassword_chek()
login_p = login_check()
password_p = password_check()
from tkinter import *
screen = Tk()
screen.resizable(width=False, height=False)
screen.geometry('410x230')
screen.title('Регистрация')
# screen.iconbitmap("D:/Python/регистр/web/favicon.ico")
def Enter(event):
TWp = TWpassword_chek()
login_p = login_check()
password_p = password_check()
print("логин + пароль " + str(login_p) + str(password_p))
if login_p == True:
print("логин есть")
if password_p == True:
print("пароль")
if TWp == True:
vse = Label(text=' Вы зарегистрированы ', font='Consolas')
vse.grid(row=16, column=0, padx=1, pady=1)
print("зарегистрированы")
# проверка имени
def login_check():
N = name_entry.get()
if len(str(N)) > 20:
l20 = Label(text=' это имя слишком длинное ', font='Consolas')
l20.grid(row=13, column=0, padx=1, pady=1)
print("l1") # Эта строка что бы я видел сработала ли функция
login_p = False
elif len(str(N)) < 3:
l3 = Label(text=' это имя слишком короткое ', font='Consolas')
l3.grid(row=13, column=0, padx=1, pady=1)
print("l2") # Эта строка что бы я видел сработала ли функция
login_p = False
else:
l0 = Label(text=' ', font='Consolas')
l0.grid(row=13, column=0, padx=1, pady=1)
print("l3") # Эта строка что бы я видел сработала ли функция
login_p = True
return login_p
# password
def password_check():
P = password_entry.get()
if len(str(P)) < 5 or str(P) in ("abcde", "ABCDE", "12345", "123456789", "987654321", "абвгд", "АБВГД"):
p1 = Label(text=" Слишком короткий пароль ", font='Consolas')
p1.grid(row=14, column=0, padx=1, pady=1)
print("1") # Эта строка что бы я видел сработала ли функция
password_p = False
else:
p0 = Label(text='' * 30, font='Consolas')
p0.grid(row=14, column=0, padx=1, pady=1)
print("3") # Эта строка что бы я видел сработала ли функция
password_p = True
return password_p
def TWpassword_chek():
P = password_entry.get()
TWP = TWpassword_entry.get()
if TWP == P:
print("пароли совпали " + TWP)
TWp = True
TW0 = Label(text=' ', font='Consolas')
TW0.grid(row=15, column=0, padx=1, pady=1)
else:
print("пароли не совпали")
TWp = False
TWp_e = Label(text=' Пароли не совподают ', font='Consolas')
TWp_e.grid(row=15, column=0, padx=1, pady=1)
return TWP
# КНОПКА
enter = Button(text='Ввод', font='Consolas', width=18)
# Ввод
name_entry = Entry(screen, font='Consolas')
password_entry = Entry(screen, font='Consolas', show='*')
TWpassword_entry = Entry(screen, font='Consolas', show='*')
# Надписи
Tname = Label(text='Введите имя пользователя:', font='Consolas')
Tpassword = Label(text='Придумайте пароль: ', font='Consolas')
TWpassword = Label(text='Повторите пароль: ', font='Consolas')
# расположение
Tname.grid(row=3, column=0, sticky=W, padx=1, pady=1)
name_entry.grid(row=3, column=1, padx=1, pady=1)
Tpassword.grid(row=4, column=0, sticky=W, padx=1, pady=1)
password_entry.grid(row=4, column=1, padx=1, pady=1)
TWpassword.grid(row=5, column=0, sticky=W, padx=1, pady=1)
TWpassword_entry.grid(row=5, column=1, padx=1, pady=1)
enter.grid(row=10, column=0, padx=1, pady=1)
enter.bind('<Button-1>', Enter)
screen.mainloop()
screen.mainloop()
, потому что вы вызвали зачем-то бесконечный циклreger = True
while reger:
from tkinter import *
screen = Tk()
screen.resizable( width = False, height = False )
screen.geometry( '410x230' )
screen.title( 'Регистрация' )
def Ввод ( event ):
login_p = name_entry.get()
password_p = password_entry.get()
login_check()
password_check()
print("логин + пароль" + str(login_p ) + str(password_p))
if login_p == password_p:
vse = Label( text = 'Вы зарегистрированы ', font = 'Consolas' )
vse.grid( row = 0, column = 1, padx = 1, pady = 1 )
#проверка имени
def login_check ():
N = name_entry.get()
if len(str(N)) > 20:
l20 = Label( text = 'это имя слишком длинное', font = 'Consolas' )
l20.grid( row = 9, column = 0, padx = 1, pady = 1 )
print("l1")# Эта строка что бы я видел сработала ли функция
login_p = 9
elif len(str(N)) < 3:
l3 = Label( text = 'это имя слишком короткое', font = 'Consolas' )
l3.grid( row = 10, column = 0, padx = 1, pady = 1 )
print("l2")# Эта строка что бы я видел сработала ли функция
login_p = 10
else:
print("l3")# Эта строка что бы я видел сработала ли функция
login_p = 1
#password
def password_check ():
P = password_entry.get()
if len(str(P)) < 5:
p1 = Label ( text = "Слишком короткий пароль", font = 'Consolas' )
p1.grid( row = 11, column = 0, padx = 1, pady = 1 )
print("1")# Эта строка что бы я видел сработала ли функция
password_p = 2
elif str(P) == "abcde":
p2 = Label ( text = "Слишком простой пароль", font = 'Consolas' )
p2.grid( row = 11, column = 0, padx = 1, pady = 1 )
print("2")# Эта строка что бы я видел сработала ли функция
password_p = 3
elif str(P) == "ABCDE":
p3 = generateLabel ( text = "Слишком простой пароль", font = 'Consolas' )
p3.grid( row = 11, column = 0, padx = 1, pady = 1 )
print("3")# Эта строка что бы я видел сработала ли функция
password_p = 4
elif str(P) == "12345":
p4 = Label ( text = "Слишком простой пароль", font = 'Consolas' )
p4.grid( row = 11, column = 0, padx = 1, pady = 1 )
print("4")# Эта строка что бы я видел сработала ли функция
password_p = 5
elif str(P) == "123456789":
p5 = Label ( text = "Слишком простой пароль", font = 'Consolas' )
p5.grid( row = 11, column = 0, padx = 1, pady = 1 )
print("5")# Эта строка что бы я видел сработала ли функция
elif str(P) == "987654321":
p6 = Label ( text = "Слишком простой пароль", font = 'Consolas' )
p6.grid( row = 11, column = 0, padx = 1, pady = 1 )
print("6")# Эта строка что бы я видел сработала ли функция
password_p = 6
elif str(P) == "абвгд":
p7 = Label ( text = "Слишком простой пароль", font = 'Consolas' )
p7.grid( row = 11, column = 0, padx = 1, pady = 1 )
print("7")# Эта строка что бы я видел сработала ли функция
password_p = 7
elif str(P) == "АБВГД":
p8 = Label ( text = "Слишком простой пароль", font = 'Consolas' )
p8.grid( row = 11, column = 0, padx = 1, pady = 1 )
print("8")# Эта строка что бы я видел сработала ли функция
password_p = 8
else:
print("9")# Эта строка что бы я видел сработала ли функция
password_p = 1
#КНОПКА
enter = Button( text = 'Ввод', font = 'Consolas', width = 18 )
name_entry = Entry( screen, font = 'Consolas' )
password_entry = Entry( screen, font = 'Consolas', show = '*' )
#Надписи
Tname = Label( text = 'Введите имя пользователя:', font = 'Consolas' )
Tpassword = Label( text = 'Придумайте пароль: ', font = 'Consolas' )
# расположение
Tname.grid( row = 0, column = 0, sticky = W, padx = 1, pady = 1 )
name_entry.grid( row = 0, column = 1, padx = 1, pady = 1 )
Tpassword.grid( row = 1, column = 0, sticky = W, padx = 1, pady = 1 )
password_entry.grid( row = 1, column = 1, padx = 1, pady = 1 )
enter.grid( row = 7, column = 0, padx = 1, pady = 1 )
enter.bind( '<Button-1>', Ввод )
screen.mainloop()