Essa foi minha solução:
import random
def todos_os_caracteres():
maiusculas = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
minusculas = "abcdefghijklmnopqrstuvwxyz"
numeros = "0123456789"
especiais = "!@#$%&*"
caracteres_da_senha = maiusculas + minusculas + numeros + especiais
return caracteres_da_senha
def senha_gerada():
senha = []
while len(senha) < 12:
escolher = random.choice(todos_os_caracteres())
senha.append(escolher)
return senha
print('A senha gerada foi:', end=' ')
for caracter in senha_gerada():
print(caracter, end='')