1
resposta

[Sugestão] Solução incrementada

import random

def gerador_senha():
    print('|===== Gerador de Senha =====|\n')
    n_char = int(input('Digite a quantidade de caracteres da senha: '))
    while True:
        maiuscula = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
        minuscula = 'abcdefghijklmnopqrstuvwxyz'
        numeros = '1234567890'
        especiais = '!@#$%&*'

        senha = [random.choice(maiuscula),
                random.choice(minuscula),
                random.choice(numeros),
                random.choice(especiais)]
        
        todos_caracteres = maiuscula + minuscula + numeros + especiais
        senha.extend(random.choices(todos_caracteres, k=n_char))
        random.shuffle(senha)
        print(f'\nSenha gerada: {''.join(senha)}')
        aceite = input('Gerar novamente? (s/n) ')
        if aceite.lower() in ('s','sim'):
            continue
        else:
            print('\nApp Finalizado!')
            break
gerador_senha()

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi, Leonardo! Como vai?

Gostei bastante da forma como você garantiu que a senha tenha variedade de caracteres logo no início da geração. Isso melhora a segurança e demonstra atenção aos detalhes na lógica do seu projeto.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!