Tell us what’s happening:
It’s asking me to add a new tuple to the constraints list, using lowercase
as the first item and a regex pattern that matches a single lowercase letter as the second item. This is the hint I’m getting when the code is wrong;
" You should add a second tuple to the constraints
list. Use the lowercase
parameter as the first item and [a-z]
as the second item."
I don’t know if I’m adding the second tuple correctly or not, but I’m assuming that’s where my error is coming from. Any insight would be great!
Your code so far
import re
import secrets
import string
def generate_password(length, nums, special_chars, uppercase, lowercase):
# Define the possible characters for the password
letters = string.ascii_letters
digits = string.digits
symbols = string.punctuation
# Combine all characters
all_characters = letters + digits + symbols
while True:
password = ''
# Generate password
for _ in range(length):
password += secrets.choice(all_characters)
/* User Editable Region */
constraints = [
(nums, '[0-9]')
(lowercase, '[a-z]')
]
/* User Editable Region */
return password
# new_password = generate_password(8)
# print(new_password)
pattern = '[^a-z]t'
quote = 'Not all those who wander are lost.'
# print(re.findall(pattern, quote))
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
Challenge Information:
Learn Regular Expressions by Building a Password Generator - Step 39