Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Gerador de senha segura

import random

letras = 'abcdefghijklmnopqrstuvwxyz'
numeros = '1234567890'
caracteres = ',<.>;:/?@#$%!'

def gerar_senha():
    senha = [
    random.choice(letras).upper(),
    random.choice(letras),
    random.choice(numeros),
    random.choice(caracteres)
]
    for i in range(8):
        verificador = random.randint(0,2)
        if verificador == 0:
            valor = random.randint(0, len(letras) - 1)
            fator = random.randint(0,1)
            if fator == 0:
                letra = letras[valor]
                senha.append(letra)
            else:
                letra = letras[valor]
                senha.append(letra.upper())
        
        elif verificador == 1:
            valor = random.randint(0,len(numeros) - 1)
            numero = numeros[valor]
            senha.append(numero)
        
        else:
            valor = random.randint(0,len(caracteres) - 1)
            caractere = caracteres[valor]
            senha.append(caractere)
    
    random.shuffle(senha)
    return senha                  
senha = gerar_senha()

print('Senha gerada: ', *senha, sep='')
1 resposta
solução!

Oi, Lucas, como vai?

Sua implementação demonstra um ótimo uso do módulo random para garantir a variabilidade dos caracteres e a aleatoriedade da senha final. A estratégia de iniciar a lista com os requisitos mínimos de cada tipo de caractere e depois embaralhar o resultado com random.shuffle é uma solução inteligente para garantir que a senha seja segura e cumpra todos os critérios solicitados no exercício. A lógica de sorteio para preencher o restante da senha também está bem aplicada e funcional.

Parabéns pelo excelente desempenho no desenvolvimento e por compartilhar sua lógica com a comunidade.

Continue praticando seus conhecimentos em Python e saiba que o fórum permanece à disposição para suas futuras postagens.

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