0% found this document useful (0 votes)
17 views

2 Python

This function allows users to sign up by adding their username and password to dictionaries if the password is valid, defined as at least 8 characters containing lowercase, uppercase, and numeric characters. It returns True if successful or False if the username exists or password is invalid.
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views

2 Python

This function allows users to sign up by adding their username and password to dictionaries if the password is valid, defined as at least 8 characters containing lowercase, uppercase, and numeric characters. It returns True if successful or False if the username exists or password is invalid.
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 1

def signup(user_accounts, log_in, username, password):

'''
This function allows users to sign up.
If both username and password meet the requirements:
- Updates the username and the corresponding password in the user_accounts
dictionary.
- Updates the log_in dictionary, setting the value to False.
- Returns True.

If the username and password fail to meet any one of the following
requirements, returns False.
- The username already exists in the user_accounts.
- The password must be at least 8 characters.
- The password must contain at least one lowercase character.
- The password must contain at least one uppercase character.
- The password must contain at least one number.
- The username & password cannot be the same.

For example:
- Calling signup(user_accounts, log_in, "Brandon", "123abcABCD") will return
False
- Calling signup(user_accounts, log_in, "BrandonK", "123ABCD") will return
False
- Calling signup(user_accounts, log_in, "BrandonK","abcdABCD") will return
False
- Calling signup(user_accounts, log_in, "BrandonK", "123aABCD") will return
True. Then calling
signup(user_accounts, log_in, "BrandonK", "123aABCD") again will return False.

Hint: Think about defining and using a separate valid(password) function that
checks the validity of a given password.
This will also come in handy when writing the change_password() function.
'''
if(username==password):
return False
else:
if (username in user_accounts):
return True
else:
if valid(password)==True:
user_accounts[username]=password
log_in[username]=False
else:
return False
import re

def valid(password):

if(len(password)>=8):
regex = ("^(?=.*[a-z])(?=." +
"*[A-Z])(?=.*\\d)")
p = re.compile(regex)
if (re.search(p, password)):
return True
else:
return False

You might also like