2017-10-03 1 views
0

J'essaye de déboguer un cadre de connexion client en Python. Certains utilisateurs ont des comptes existants et pour eux, je veux que le programme continue. Cette partie fonctionne. Pour ceux qui n'ont pas de compte, je veux créer un compte pour eux (juste leur nom et prénom), l'ajouter à des comptes existants, puis leur permettre de se connecter en utilisant le compte nouvellement créé. Deux essais pour se connecter correctement ne sont pas sensibles à la casse en utilisant un compte, puis le programme se ferme. Je pense que j'ai le cadre là-bas, mais pour une raison quelconque, mon exception: déclaration ne fonctionne pas.Essayer de créer une connexion client en Python

def login(): 
    useraccounts = ['bob doe', 'joe doe', 'jane doe'] 
    user = input('Please log in using your first and last name\n') 
    user = user.lower() 
    try: 
     for user in useraccounts: 
      print('Welcome,',login,'.\n') 
      break 
    except: 
     print('No user found. Please create a new account.') 
     newacct = input('Please enter your first and last name. This will be your login information.') 
     newacct = newacct.lower() 
     useraccounts.append(newacct) 
     print('Welcome,',newacct,'. Please log in using your new account.\n') 

login() 
+0

cela n'a aucun sens ... vous ne les connectez pas du tout ... et cela affichera simplement "bienvenue " pour tous les comptes utilisateurs ... voulez-vous juste vous connecter pour nous donner un nom? ou quoi? loggin indique généralement que vous enregistrez l'état de l'utilisateur enregistré ... –

Répondre

1

Je suppose que quelque chose comme ça pourrait fonctionner ... mais votre énoncé du problème est au manque severly moment,

def login(useraccounts = ['bob doe', 'joe doe', 'jane doe']): 
    username = input("Enter your username?") 
    if username not in useraccounts: 
     if input("User Not found Would you like to register?").lower()[0] == "y": 
      useraccounts.append(username) 
      print("Registered! now login!") 
     return login() 
    # else your username is in your list of user accounts 
    print(f"Hi {username}") 

comme on le voit ci-dessous

>>> login() 
Enter your username?joran 
User Not found Would you like to register?y 
Registered! now login! 
Enter your username?joran 
Hi joran 
>>>