1
resposta

Reorganizando uma lista de convidados - minha solução

Camila adora receber amigos para jantares temáticos. Para o próximo encontro, ela quer garantir que a ordem de
chegada seja respeitada, mas ainda precisa fazer ajustes na lista de convidados. Camila quer adicionar novos nomes
e organizá-los em posições específicas.

Como você criaria um programa que mostre a lista inicial, permita a inserção de um novo nome em uma posição escolhida e
exiba a lista atualizada?

convidados = ['Ana', 'Pedro', 'Carlos']

print(f'Sua lista de convidados inicial: {convidados}')
novo_convidado = input('\nDigite o nome do novo convidado: ')

while True:
   try:
      posicao = int(input(f'Em qual posição você quer inserir {novo_convidado}? '))
        
      if posicao <= len(convidados):
         print(f'{novo_convidado} inserido na posição {posicao} com sucesso!')
         convidados.insert(posicao, novo_convidado)
         print(f'\nSua lista de convidos atualizada: {convidados}')
         break
        
      print(f'\nPosição inválida! Por favor insira uma posição entre 0 a {len(convidados)}')
   except:
      print('\nPor favor insira um número!')
1 resposta

Oi, Enzo! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Gostei da forma como você organizou a solução usando while True, try e except pra validar a posição informada. O seu código ficou bem estruturado e a escolha de usar insert() foi muito adequada para resolver a proposta, já que esse método permite adicionar um item exatamente no índice desejado.

Uma dica interessante pra o futuro é usar enumerate() para mostrar a lista com índices, facilitando a visualização das posições antes da inserção.


convidados = ['Ana', 'Pedro', 'Carlos']

for indice, nome in enumerate(convidados):
    print(indice, nome)

Esse código mostra cada nome junto com sua posição na lista, o que ajuda bastante na hora de inserir um novo convidado no lugar certo.

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