Tive duvida para resolver e não conseguir pois não compreendir o enunciado alguem consegue me explicar? a luri me deuns resumos porem não obtive sucesso.
Tive duvida para resolver e não conseguir pois não compreendir o enunciado alguem consegue me explicar? a luri me deuns resumos porem não obtive sucesso.
Enunciado: Imagine que você é um desenvolvedor na Hermex Log, uma empresa de logística especializada em serviços de entrega. Sua tarefa é criar um sistema para gerenciar as encomendas, onde cada encomenda deve ser armazenada em uma lista. Durante o desenvolvimento, você percebe a importância de validar as entradas no sistema para evitar interrupções inesperadas devido a erros de dados.
Considerando o contexto apresentado, qual trecho de código Python representa corretamente a criação de uma lista de encomendas e a iteração segura sobre ela, tratando possíveis erros de entrada?
Resposta:
encomendas = input("Digite os números das encomendas separados por vírgula: ").split(',')
try:
for encomenda in encomendas:
print(int(encomenda))
except ValueError:
print("Uma das entradas não é um número válido.")
Nesse códgo, primeiro o usuário digitaria os números das encomendas separados por vírgula, como:
"445,345,657,787"
O método split, criar uma lista, a partir de uma string, separando pelo separador, no caso ','
Criaria então a seguinte lista:
['445', '345', '657', '787']
Em seguida, ele itera sobre ela, cada valor:
'445', por exemplo,
E vai tentar converter para inteiro, e em seguida printar, na seguinte linha:
print(int(encomenda))
Caso possa ser convertido para inteiro, como '445', virando 445, é printado.
Se não puder, como '44b', vai estourar um ValueError, pois '44b' não pode ser convertido para inteiro.
Esse erro será pego pelo except ValueError
, e irá printar "Uma das entradas não é um número válido."
Deu pra entender o fluxo? Tudo bem se não, pode falar qualquer dúvida.