1
resposta

[Projeto] Registrando voluntários para uma campanha

volutarios = []
volutario = input('Digite o nome do volutario (ou sair para encerrar): ')
while volutario != 'sair':
    volutarios.append(volutario)
    volutario = input('Digite o nome do volutario (ou sair para encerrar): ')
    if volutario == 'sair':
        break
print(f'Volutarios registrados: {volutarios}')
1 resposta

Olá, Apollo. Como vai?

Seu código para registro de voluntários está muito bem estruturado e utiliza conceitos essenciais de manipulação de dados em Python. Você aplicou corretamente a estrutura de repetição while combinada com o método .append(), que é a forma padrão e mais eficiente de alimentar uma lista dinamicamente.

O uso da "sentinela" (a palavra 'sair') é uma excelente prática de Pensamento Computacional, pois dá ao usuário o controle total sobre o fluxo do programa, permitindo encerrar a entrada de dados no momento desejado.

Para refinar ainda mais seu código, deixo algumas observações técnicas:

  • Refatoração do if: No seu código, você verifica se o voluntário digitou 'sair' dentro do while com um if e um break. Como a própria condição do while volutario != 'sair' já faz essa verificação, você poderia simplificar o código removendo o if interno.
  • Tratamento de Texto: Assim como no desafio da despensa, o uso de .strip().lower() no final do input() ajudaria a evitar que espaços extras ou letras maiúsculas (como ' Sair' ou 'SAIR') impedissem o encerramento do programa.
  • A Função len(): Uma adição legal seria exibir no final não apenas a lista, mas também a quantidade total de voluntários utilizando len(volutarios), o que daria um fechamento mais completo para a campanha.

Aqui está uma versão levemente mais enxuta para comparação:

voluntarios = []
while True:
    nome = input('Digite o nome do voluntário (ou "sair" para encerrar): ').strip()
    if nome.lower() == 'sair':
        break
    voluntarios.append(nome)

print(f'Total de {len(voluntarios)} voluntários registrados: {voluntarios}')

Você está demonstrando um ótimo domínio sobre listas e fluxos de controle. Continue com esse foco!

Espero que possa ter lhe ajudado!