1
respuesta

[Duda] TypeError: '<' not supported between instances of 'str' and 'int'

Cuando corro la respuesta del ejercicio en Collab me aparece este error:

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

for km, nombre in zip(nombres, kms):
    if km < 20000:
        print(nombre)

*--------------------------------------------------------------------------- TypeError Traceback (most recent call last) in <cell line: 1>() 1 for km, nombre in zip(nombres, kms): ----> 2 if 'km' < 20000: 3 print(nombre)

TypeError: '<' not supported between instances of 'str' and 'int'*

La verdad ya intente hacer int(km) pero no funciona

1 respuesta

¡Hola Melany! Cómo va?

El error que estás experimentando se debe a que estás comparando una cadena de texto con un número entero en la línea if km < 20000. Para solucionar este problema, debes convertir la variable km a un número entero utilizando la función int().

Sin embargo, mencionaste que ya intentaste hacer int(km) pero no funcionó. Es extraño que no haya funcionado, ya que esa es la forma correcta de convertir una cadena de texto a un número entero en Python.

Aquí hay un ejemplo de cómo debería verse tu código corregido:

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

for km, nombre in zip(nombres, kms):
    if int(km) < 20000:
        print(nombre)

Espero que esto te ayude ;) abrazo y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓.