привет, я новичок в программировании. Я пытался сделать этот логин и зарегистрировать программу с использованием sqlite3 в первый раз. Как вы можете видеть, способ написания моих функций check_username неверен, потому что разрыв используется вне цикла. Не могли бы вы помочь мне перестроить мой код таким образом, чтобы не возникало никакой синтаксической ошибки. Любой совет будет очень полезным.
import re
import sqlite3
specialChar = ['$', '#', '@', '!', '*']
connection = sqlite3.connect("login_database.db")
cursor = connection.cursor()
def creat_table():
cursor.execute("""CREATE TABLE IF NOT EXISTS Register
(username TEXT, password TEXT)""")
connection.commit()
def insert_info(userN, passW):
cursor.execute("INSERT INTO Register VALUES(?,?)", (userN, passW))
connection.commit()
def check_username_taken(userN):
while True:
userN = input("create a username: ")
cursor.execute("SELECT * FROM Register WHERE username=?", (userN,))
fetch = cursor.fetchone()
connection.commit()
if fetch is not None:
print("username taken")
else:
break
def check_username_exit(userN):
cursor.execute("SELECT * FROM Register WHERE username=?", (userN,))
fetch = cursor.fetchone()
connection.commit()
if fetch is not None:
break
else:
print("username is not registered.")
print("1.Register \n2.Login \n3.exit")
while True:
decision = input("What would you like to do? ")
if decision == "1":
while True:
userN = input("create a username: ")
check_username_taken()
while True:
passW = input("creat a password: ")
if len(passW) < 6:
print("Your password should at least contain 6 charcters.")
elif re.search("[0-9]", passW) is None:
print("Your password must contain at least one number.")
elif re.search("[a-z]", passW) is None:
print("Your password must contain at least one letter.")
elif not any(c in specialChar for c in passW):
print("Your password must contain at least one spcial character.")
else:enter code here
insert_info()
print("Password is set!")
break
if decision == "2":
while True:
userN = input("Username: ")
check_username_exit()
x = 0
while x !=1 :
passW = input("Password: ")
for key,val in list.items():
if key == userN and val == passW:
print("logging in ...")
x = 1
break
else:
print("wrong combination.")
break
if decision == "3":
print("\nEnd of the program!")
exit()