Gostaria de entender melhor por que a ordem das variáveis passadas para o for deve ser exatamente a mesma ordem dos passada para a zip().
#Caso correto
for nome, km in zip(nomes, kms):
if(km < 20000):
print(nome)
________________________________________________
Passat
Crossfox
C4
#Caso incorreto
for km , nome, in zip(nomes, kms):
if(km < 20000):
print(nome)
_________________________________________
TypeError Traceback (most recent call last)
<ipython-input-99-e6f814ff6e6b> in <module>
3
4 for km, nome in zip(nomes, kms):
----> 5 if(km < 20000):
6 print(nome)
TypeError: '<' not supported between instances of 'str' and 'int'
A princípio não vejo relação entre as duas funções, a menos que a zip() retorne com um preenchimento das variáveis do for na ordem em que as recebeu. Faz sentido essa hipótese?