Learn Regular Expressions by Building a Password Generator - Step 72

Tell us what’s happening:

Describe your issue in detail here.
What should we do here?

Your code so far

import re
import secrets
import string


def generate_password(length=16, nums=1, special_chars=1, uppercase=1, lowercase=1):

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

        # Check constraints        
        if all(
            constraint <= len(re.findall(pattern, password))
            for constraint, pattern in constraints
        ):
            break
    
    return password
if__name__ == '__main__'

# User Editable Region

new_password = generate_password()
print('Generated password:', new_password):

# User Editable Region

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 Edg/122.0.0.0

Challenge Information:

Learn Regular Expressions by Building a Password Generator - Step 72

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.

Your if statement isn’t formatted correctly

if condition == True:
    code goes here

Please stop opening new topics for this problem, one is enough

I am unable to solve this problem please help me

I helped you. Did you try reformatting your if statement?

Please share your update code.

Please stop opening new topics. Paste your updated code here.

I’ve copied this from the other new topic you created:

I’ve shown you the example syntax for an if statement. It’s just an example, you cannot copy it directly:

if condition == True:
    code goes here

You need to edit your code to match this syntax or format.

if__name__ == '__main__'

new_password = generate_password()
print('Generated password:', new_password):

Your if line needs a space after if
Your if line needs a colon at the end
You need to indent the code after the if statement

You should review how to do an if statement here:
https://www.w3schools.com/python/gloss_python_if_statement.asp

This is a very basic and foundational thing that you should understand fully before continuing.

Please let me know if you have any other questions about it.

In this thread.

Please, do not start another new thread!

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.