Oi, Luiz, como vai?
A sua estratégia de isolar as chaves com o método keys e os valores com o método values foi certeira, e a conversão das idades para string dentro da compreensão de lista garantiu que a junção com o método join funcionasse perfeitamente.
Uma dica que enriquece o trabalho com dicionários é que, por padrão, quando iteramos diretamente sobre o dicionário ou o transformamos em uma string combinada, o Python já assume que estamos lidando com as chaves. Isso significa que na primeira linha de exibição você obteria exatamente o mesmo resultado se utilizasse apenas o nome da variável, escrevendo participantes em vez de participantes.keys(). É um detalhe simples que pode tornar o código ainda mais direto e limpo.
Sabendo que os métodos keys e values retornam visualizações dinâmicas dos dados, o que aconteceria com os resultados exibidos na tela se um novo participante fosse adicionado ao dicionário no meio do caminho?
Parabéns pela excelente resolução do exercício e por disponibilizar a sua resposta aqui no fórum para inspirar outros estudantes.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!