Learn Regular Expressions by Building a Password Generator - Step 63

Tell us what’s happening:

I have changed the to () and it still wouldnt pass the test.

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)
       
        constraints = [
            (nums, r'\d'),
            (lowercase, r'[a-z]'),
            (uppercase, r'[A-Z]'),            
            (special_chars, fr'[{symbols}]')            
        ]

        # Check constraints
        count = 0

/* User Editable Region */

        if all((constraint <= len(re.findall(pattern, password) for constraint, pattern in constraints)):

/* User Editable Region */

            break
    
    return password

# new_password = generate_password(8)
# print(new_password)

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 Edg/120.0.0.0

Challenge Information:

Learn Regular Expressions by Building a Password Generator - Step 63

You appear to have created this post without editing the template. Please edit your post to Tell us what’s happening in your own words.

Hello olufemiphilips,

You don’t have to add anything, the question only asks to remove the [ and ] brackets of the intitial code. So I would advise to reset the step and only remove this and not change anything else, including the indentations.

1 Like