# A número da conta registrada
nº 1, o nome de usuário existe novamente.
# 2, o nome do usuário apenas letras e números, de 8 a 16 bits.
# 3, apenas por uma senha de letras e números, de 8 a 16 bits.
# 4, insira o código de convite.
# 4, digite o código de verificação para concluir o registro.
# Em segundo lugar, a conta de login
# 1, a conta não existir novamente.
# 2, o número de conta correto e senha incorreta, três vezes é errado para bloquear a conta.
# ================ link para registo ================ impressão ( ' super afiliado registrado ' .center (30, ' = ' )) info_cheek = 1 ivt_cheek = 1 o tempo info_cheek: in_name = a entrada ( ' por favor insira um nome de usuário que você usa para fazer login em: ' .strip ()) IF não in_name.isalnum (): Imprimir ( ' nome de usuário somente por números e cartas, por favor, re-entrar ' ) Continuar IF len (in_name) <8. ou 16 lEN (in_name)> : Imprimir ( 'comprimento noncompliant nome de utilizador (16/08), por favor re-entrar ' ) Continuar com aberta (P & lt ' 0011 conta senha de dados txt 'MODO = ' TA 'que codifica = ' UTF-8. ' ) SQL como: para Cheek em SQL: IF in_name cheek.strip == () Split (. ' : ' ) [0]: Imprimir ( ' nome de usuário já existe, por favor, re-entrar ' ) QUEBRAR a outra : info_cheek = 0 o tempo . 1 : in_pwd = INPUT ( ' Por favor, digite a senha que você usa para fazer login em: ' ) .strip () IF não in_pwd.isalnum (): Imprimir ( ' password apenas por números e letras, por favor tente novamente ' ) a Continuar elif len (in_pwd ) <8. ou len (in_pwd)> 16 : Imprimir ( ' noncompliant senha de tamanho (8-16), por favor, re-entrar ' ) Continuar a outra : INTERVALO de impressão ( ' nome de usuário e senha disponível ' .center (30, ' = ' )) o tempo ivt_cheek: ivt_num = ENTRADA ( ' Introduzir código convite: ' ) .strip () com aberta (P & lt ' 0012 convite biblioteca código txt ' , MODO = ' TA ' , que codifica = ' UTF-8. ' SQL AS): para mordente em SQL : sE ivt_num == cheek.strip (): ivt_cheek = 0 PAUSA o resto : impressão ( ' código de convite não existe, por favor, re-entrar ' ) ident_set = { ' 0 ' ,' 1 ' ,' 2 ' , ' 3 ' , ' 4 ' , ' 5 ' , ' 6 ' , ' 7 ' , ' 8 ' , ' 9 ' } ident_num = '' enquanto uma : por _ no intervalo (4 ): ident_n = ident_set .pop () ident_num + = ident_n in_ident = entrada ( 'Por favor, indique ({}): ' .format (ident_num)) faixa (). IF in_ident == ident_num: QUEBRAR o resto : impressão ( ' erro de entrada de código de validação, por favor, re-entrar ' ) ident_num = ' ' Impressão ( ' Parabéns , registrado, certifique-se e manter seu nome de usuário e senha ' ) Imprimir ( ' nome de usuário: {} ' .format (in_name)) Imprimir ( ' password: {} ' .format (in_pwd)) in_info = in_name + ' : ' + in_pwd + '\ N- ' com aberta (P & lt ' 0011 conta txt senha de dados 'MODO = ' AT 'que codifica = ' UTF-8. ' ) SQL como: sql.write (in_info) # ========== ====== link login ================ Condi = 1 miss_list = [] enquanto Condi: Imprimir ( ' Super Acesso de Membros ' .center (30, ' = ' ) ) user_name = a entrada ( ' Por favor, digite seu nome de usuário: ' ) a user_pwd = a entrada ( ' Por favor, digite sua senha: ' ) Abrir com (P & lt ' 0013 lista negra txt ' , MODO = ' TA ' , que codifica = ' UTF-8. ' ) SQL como: para black_cheek em SQL: SE USER_NAME == black_cheek.strip (): impressão ( ' o utilizador tem está bloqueado, por favor tente novamente mais tarde ' ) Condi = 0 INTERVALO a outra : com Open (r ' 0011 conta de banco de dados de senha .txt 'o MODE = ' RT 'codificando =' ]:utf-8 ' ), como SQL: para login_c em SQL: login_cheek . = login_c.strip () dividido ( ' : ' ) se nome_usuario == login_cheek [0] e user_pwd == login_cheek [1 ]: de impressão ( ' 登录成功' ) Condi = 0 ruptura elif nome_usuario == login_cheek [0] e user_pwd! = login_cheek [1 miss_list.append (nome_usuario) Possibilidade = 3 -. miss_list.count (USER_NAME) IF Chance> 0: Imprimir ( ' senha errada, por favor vezes de repetição pode também tentar {} ' .format (Chance)) QUEBRAR o resto : impressão ( ' a palavra-passe de utilizador tenha sido errado 3 vezes, está bloqueado ' ) Condi = 0 com aberta (P & lt ' 0013 txt lista negra 'MODO = ' AT ', Codificando = ' UTF-8. ') SQL AS: sql.write ( ' {} \ n- ' .format (USER_NAME)) QUEBRAR o resto : impressão ( " nome de usuário não existe, por favor, re-entrar " )