El objeto python int no es subscriptable

Algunos objetos en Python son subscriptables. Esto significa que contienen, o pueden contener, otros objetos. Los enteros no son un objeto con subìndice. Se utilizan para almacenar n√∫meros enteros. Si trata un n√∫mero entero como un objeto con subìndice, se generará un error.

En esta guìa, vamos a hablar sobre el " typeerror: " int " el objeto no se puede suscribir " error y por qué se plantea. Revisaremos un fragmento de còdigo con este problema para mostrar còmo puede resolverlo en su còdigo. ¬°Empecemos!

El problema: typeerror: " int " el objeto no es subcriptable

Comenzaremos echando un vistazo a nuestro mensaje de error:

La primera parte de nuestro mensaje de error, TypeError, indica el tipo de nuestro error. Un TypeError es un error que se genera cuando intenta realizar una operaciòn en un valor que no admite esa operaciòn. Concatenar una cadena y un entero, por ejemplo, genera un TypeError.

La segunda parte de nuestro mensaje nos informa de la causa.

Este mensaje es revelador. nosotros que estamos tratando un entero , que es un n√∫mero entero, como un objeto subcriptable. Los enteros no son objetos con subìndice. Solo los objetos que contienen otros objetos, como cadenas , listas , tuplas y diccionarios se pueden suscribir.

Vamos a " s dicen que intenta usar la indexaciòn para acceder a un elemento de una lista:

Este còdigo devuelve: ProtonMail. Las listas son subscriptables, lo que significa que puede usar la indexaciòn para recuperar un valor de una lista.

El 81% de los participantes afirmaron que se sentìan más seguros acerca de sus perspectivas laborales de tecnologìa después de asistir a un campamento de entrenamiento. Asòciese a un bootcamp hoy.

El graduado promedio de un bootcamp pasò menos de seis meses en la transiciòn profesional, desde comenzar un bootcamp hasta encontrar su primer trabajo.

No puede usar esta misma sintaxis en un valor no suscriptable, como un flotante o un entero.

Un escenario de ejemplo

Vamos a escribir un programa que le pregunte a un usuario la fecha en la que su pròximo vacaciones comienza e imprime cada valor en una lìnea separada. Este programa tendrá un error que podemos resolver.

Comencemos escribiendo nuestro programa principal:

Este programa le pide al usuario que inserte el dìa en el que comienza su dìa festivo usando un declaraciòn input () . Luego, usamos la divisiòn para recuperar los valores del mes, dìa y a√±o que el usuario ha especificado. Estos valores se almacenan en variables. < br>

A continuaciòn, imprimimos los valores de estas variables en la consola. A cada valor se le asigna una etiqueta que indica la parte de la fecha a la que corresponde el valor.

Ejecutemos nuestro còdigo:

Corregamos este error.

Hemos convertido el valor de " vacaciones " en un n√∫mero entero. Esto significa que no podemos acceder a él mediante segmentaciòn o indexaciòn. Los enteros no están indexados como cadenas.

Para resolver este problema, podemos eliminar la instrucciòn int () de nuestro còdigo. La instrucciòn input () devuelve un valor de cadena. Podemos dividir este valor de cadena usando nuestro còdigo.

Revisemos nuestra declaraciòn input () :

Ahora, intentemos ejecute nuestro còdigo:

¬°Nuestro còdigo se ejecuta correctamente! Ya no intentamos dividir un n√∫mero entero porque nuestro còdigo no contiene una declaraciòn int () . En cambio, " vacaciones " se almacena como una cadena. Esta cadena se divide utilizando la sintaxis de corte.

Conclusiòn

El " typeerror: " int " el objeto no se puede suscribir " se genera un error cuando intenta acceder a un n√∫mero entero como si fuera un objeto subìndice, como una lista o un diccionario.

Para resolver este problema, aseg√∫rese de no utilizar la divisiòn o la indexaciòn para acceder a los valores en un n√∫mero entero. Si necesita realizar una operaciòn solo disponible para objetos con subìndice, como dividir o indexando, primero debe convertir su n√∫mero entero en una cadena o una lista.

Ahora está listo para resolver esto Python TypeError como un experto

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method