1
resposta

[Sugestão] Gerador de senha segura

import random
import string

senha_padrao = []

while len(senha_padrao) < 12:

    if len(senha_padrao) == 4:
        senha_padrao.append(random.choice(['!','$','¨','&','*','?', '|', '^']))
    elif len(senha_padrao) == 8:
        senha_padrao.append(random.choice(['!','$','¨','&','*','?', '|', '^']))
    elif len(senha_padrao) == 12:
        senha_padrao.append(random.choice(['!','$','¨','&','*','?', '|', '^']))
    elif len(senha_padrao) == 1:
        senha_padrao.append(random.choice(['!', '$', '¨', '&', '*', '?', '|', '^']))       
    elif len(senha_padrao) == 9:
        senha_padrao.append(random.choice(string.ascii_uppercase))
    elif len(senha_padrao) == 7:
        senha_padrao.append(random.choice(string.ascii_lowercase))
    elif len(senha_padrao) == 5:
        senha_padrao.append(random.choice(string.ascii_uppercase))
    elif len(senha_padrao) == 10:
        senha_padrao.append(random.choice(string.ascii_lowercase))            
    else: senha_padrao.append(random.randint(0,9))

print('\nSenha gerada:')

print('\n')        

print(*senha_padrao, sep = '')    

print('\n')
1 resposta

Olá, Felipe! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso do While para controlar o tamanho da senha, utilizou muito bem as condições para inserir diferentes tipos de caracteres em posições específicas e ainda compreendeu a importância de misturar números, letras e símbolos para aumentar a segurança da senha.

Uma dica interessante para o futuro é simplificar a lógica usando o módulo random com choices() e combinando todos os tipos de caracteres em uma única lista. Assim:

import random
import string

caracteres = string.ascii_letters + string.digits + "!$¨&*?|^"
senha = ''.join(random.choices(caracteres, k=12))

print("Senha gerada:")
print(senha)

Isso faz a geração de senhas de forma mais enxuta e ainda garante variedade de caracteres.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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