Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Exercício de lógica

Pra praticar, resolvi tentar responder essa questão apenas com listas. É notável como Numpy e Pandas ajudam pra caramba a simplificar os códigos. Se alguém tiver uma solução mais enxuta, ficarei feliz em aprender.

nomes = ['Passat', 'Crossfox', 'DS5', 'C4', 'Jetta']
kms = [15000, 12000, 32000, 8000, 50000]

lista_transposta = []
x = 0

for item in nomes:
  lista_transposta.append([nomes[x], kms[x]])
  x += 1

for item in lista_transposta:
  if item[1] > 20000:
    print(item[0])
2 respostas
solução!

Só pra marcar como resolvido

Boa tarde João Victor, tudo bem com você?

Embora você já tenha marcado a questão como resolvida, acho que vale o meu post, pois quero parabelizá-lo por estar exercitando formas alternativas de resolver um mesmo problema. Isso certamente irá ajudar a consolidar todo o conhecimento que está adquirindo com o curso!

Sobre o código ser ou não mais enxuto (verboso), isso é uma grande polêmica no mundo de desenvolvedores. Há quem considere importante que a prioridade seja a facilidade no entendimento do seu código, já que é comum trabalhar em equipe, outros optam por códigos que utilizem menos recursos de máquina e que executem mais rápido. Acho que tudo depende do que se encaixa melhor em cada cenário.

Uma das formas menos verbosa de fazer o mesmo código é essa aqui:

nomes = ['Passat', 'Crossfox', 'DS5', 'C4', 'Jetta']
kms = [15000, 12000, 32000, 8000, 50000]

lista_transposta = [[nomes[i], kms[i]] for i in range(5)]

for item in lista_transposta:  
  if item[1] > 20000:
    print(item[0])

Parabéns mais uma vez, abraço e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software