1
resposta

[Projeto] Registrando dados de alunos

dados_aluno = input('Digite os dados do aluno no formato nome, idade , nota seperados por virgula: ').split(',')
for i in range(0, len(dados_aluno), 3):
    nome, idade, nota = dados_aluno[i], int(dados_aluno[i + 1]), float(dados_aluno[i + 2])
    print(f'Aluno: {nome}')
    print(f'Idade: {idade}')
    print(f'Nota: {nota}\n')
1 resposta

Oii Apollo, tudo bem?

Obrigado por compartilhar sua solução no fórum, ela pode ajudar outros alunos que estejam trabalhando nessa mesma atividade.

Seu código funciona corretamente e cobre bem o caso do exercício: lê a entrada, divide pelo separador, e percorre os dados em grupos de 3 com range(0, len, 3). A lógica está certa.

Dois pontos que vale você refletir:

1. Pequeno typo na mensagem ao usuário

'...nota seperados por virgula...'

seperados — confere a grafia. Detalhe pequeno, mas em produção conta.

2. E se o usuário digitar um número de itens que não seja múltiplo de 3?

Hoje, se alguém digitar João, 16, 8.5, Maria, 17 (faltando a nota da Maria), seu código vai lançar um IndexError em dados_aluno[i + 2].

Que tal pensar: como você poderia validar isso antes de entrar no for? Uma dica: len(dados_aluno) % 3 te diz se a quantidade é divisível por 3.

Não é obrigatório para o exercício, mas é um ótimo hábito de pensar em casos de borda.

Conte com a Alura para evoluir seus estudos. Em caso de dúvidas, fico à disposição.

Bons estudos!

Sucesso

Imagem da comunidade