Arreglar el Python error Int Object Is Not Iterable
Este error en sí mismo se explica por sí mismo. El objeto 'int' no es iterable
, está diciendo claramente que no puede ejecutar la iteración en un número entero. Un número entero es un solo dígito, no una lista iterable. Echemos un vistazo a algunos ejemplos.
Corregir el error 'int' object is not iterable
en Python
Cualquier cosa que devuelva o almacene un número entero no es iterable. Eso es conocimiento común. Si no está familiarizado con él, entendamos la iteración en python. La iteración se puede hacer sobre una lista, no sobre un número entero. Por ejemplo, no puede ejecutar un bucle de iteración en un número entero; simplemente no tiene sentido. Echa un vistazo al siguiente código.
# integer
number = 123
# loop over an integer
for i in number:
print(i)
Ejecutar el código anterior le dará el mismo error que está tratando de evitar. En el código anterior, number
es un número entero que tiene un único valor 123
. No se puede ejecutar un bucle sobre él. Si está confundido acerca del tipo de datos y sus funcionalidades relevantes, puede resolverlo fácilmente encontrando los métodos mágicos. En este caso, usaremos un número entero. Echar un vistazo.
# integer
number = 123
# built-in / magic methods of an integer
print(dir(number))
La salida del código anterior será la siguiente.
[
"__abs__",
"__add__",
"__and__",
"__class__",
"__cmp__",
"__coerce__",
"__delattr__",
"__div__",
"__divmod__",
"__doc__",
"__float__",
"__floordiv__",
"__format__",
"__getattribute__",
"__getnewargs__",
"__hash__",
"__hex__",
"__index__",
"__init__",
"__int__",
"__invert__",
"__long__",
"__lshift__",
"__mod__",
"__mul__",
"__neg__",
"__new__",
"__nonzero__",
"__oct__",
"__or__",
"__pos__",
"__pow__",
"__radd__",
"__rand__",
"__rdiv__",
"__rdivmod__",
"__reduce__",
"__reduce_ex__",
"__repr__",
"__rfloordiv__",
"__rlshift__",
"__rmod__",
"__rmul__",
"__ror__",
"__rpow__",
"__rrshift__",
"__rshift__",
"__rsub__",
"__rtruediv__",
"__rxor__",
"__setattr__",
"__sizeof__",
"__str__",
"__sub__",
"__subclasshook__",
"__truediv__",
"__trunc__",
"__xor__",
"bit_length",
"conjugate",
"denominator",
"imag",
"numerator",
"real",
]
Como puede ver, no puede encontrar el método iterador en la lista anterior. Veamos cuál es la diferencia cuando se trata de una lista.
# list
lst = [1, 2, 3]
# loop over a list
for j in lst:
print(j)
# built-in /magic methods of a list
print(dir(lst))
El código anterior no dará ningún error. Puede iterar sobre una lista. Si ejecuta el código anterior, también notará la función _iter_
en él, indicando que puede usar la iteración en una lista.
Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.
LinkedInArtículo relacionado - Python Error
- Administrar fallas de segmentación en Python
- Archivo <Stdin>, Línea 1, en <Módulo> Error en Python
- Arreglar AttributeError: el objeto 'generador' no tiene atributo 'siguiente' en Python
- Arreglar el comando cl.exe falló: no existe tal archivo o directorio en Windows
- Arreglar NameError: la variable no está definida en Python
- Arreglar Socket.Gaierror: [Errno 8] Nodename ni Servname proporcionado, o desconocido en Python