Este artículo discutió el error de Python Unsubscriptable, qué lo causa y cómo solucionarlo.
¿Qué causa el objeto 'in' no es un error subscriptable??
Este error es causado cuando trata un tipo entero como un objeto suscrito en Python.
Esto significa que está intentando acceder a elementos de un tipo INT que no es compatible.
Un ejemplo es como se muestra:
i = 1000En este caso, estamos intentando acceder a un elemento de un tipo entero que no es compatible con un objeto int no es subscriptable.
Ejecutar el código anterior debe devolver un error como se muestra:
$ Python Subscriptable.pyEsto nos impide usar anotaciones de indexación para acceder a elementos de un tipo INT.
En Python, los objetos subscriptables incluyen:
Cómo corregir typeError: el objeto 'int' no es un error subscriptable
Para corregir este tipo de error, debe evitar usar la notación de indexación en un tipo no compatible.
Sin embargo, si necesita acceder a elementos de un objeto, puede convertirlo en un objeto subscriptable.
Por ejemplo, en nuestro ejemplo anterior, podemos convertir el entero en un tipo de cadena como su subscriptable.
Considere la ilustración que se muestra a continuación:
i = 1000En este caso, el código debe funcionar y devolver el elemento en el índice 0 como se muestra:
$ Python Subscriptable.pyBonificación: implementar __getItem __ () en su clase
En algunos casos, es posible que necesite que su objeto sea subscriptable. Por lo tanto, debe implementar el método __getItem__ en su clase.
El ejemplo a continuación muestra cómo crea un objeto subscriptable simple.
Clase MyClass:En el ejemplo anterior, comenzamos creando una clase simple que implementa el método __getItem__.
La función simplemente tomará la clave y lo devolverá a sí misma. Por ejemplo, ejecutar el código anterior debería devolver:
$ Python Subscriptable.pyPuede usar esta notación para obtener un elemento específico de su objeto.
Un ejemplo es como se muestra:
coche de clase:En este caso, el método le permite obtener elementos en un índice específico. Ejecutar el código anterior debería devolver:
$ Python Subscriptable.pyPuede obtener más información sobre Python __getItem__ en el recurso a continuación:
https: // documentos.pitón.org/3/referencia/datamodel.objeto HTML#.__obtiene el objeto__
Conclusión
Este artículo discutió el error de Python Unsubscriptable, qué lo causa y cómo solucionarlo.