Python 3 funciones integradas

Funciones y métodos de Python

Para llamar a una función incorporada, debe usar paréntesis. Los paréntesis distinguen las llamadas a funciones de otras operaciones que se pueden realizar en algunos objetos, como la indexación.

Si intenta usar corchetes para llamar a una función incorporada, encontrará el & ldquo; TypeError: & lsquo; función_de_builtin_or_method & rsquo; el objeto no se puede suscribir & rdquo; error. & nbsp;

En esta guía, hablamos sobre lo que significa este error y por qué puede encontrarlo. Veremos un ejemplo para que pueda descubrir cómo solucionar el error.




TypeError: & lsquo; builtin_function_or_method & rsquo; el objeto no es subíndice

Solo los objetos iterables son subíndices. Los ejemplos de objetos iterables incluyen listas , cadenas y diccionarios. Se puede acceder a los valores individuales de estos objetos mediante la indexación. Esto se debe a que los elementos dentro de un objeto iterable tienen valores de índice .

Considere el siguiente código:

 languages ​​= ["English", "French"] print (languages ​​[0]) 

Nuestro código devuelve & ldquo; inglés & rdquo ;. Nuestro código recupera el primer elemento de nuestra lista, que es el elemento en la posición de índice 0. Nuestra lista es subcriptable, por lo que podemos acceder a ella usando corchetes.

Las funciones integradas no son subscriptables. Esto se debe a que no devuelven una lista de objetos a los que se puede acceder mediante la indexación.

El & ldquo; TypeError: & lsquo; builtin_function_or_method & rsquo; el objeto no se puede suscribir & rdquo; Se produce un error cuando intenta acceder a una función incorporada utilizando corchetes. Esto se debe a que cuando el intérprete de Python ve corchetes, intenta acceder a elementos de un valor como si ese valor fuera iterable.

El 81% de los participantes afirmaron que se sentían más seguros sobre sus perspectivas de trabajo técnico después de asistir a un campamento de entrenamiento. . Asigne a un bootcamp hoy mismo.

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

Vamos a construir un programa que agrega todos los registros de una lista de artículos para el hogar a otra lista. Solo se debe agregar un artículo a la lista siguiente si ese artículo está en stock.


Comience por definir una lista de artículos para el hogar y una lista para almacenar los que están en stock:

 homewares = [{" name ":" Pantalla gris "," in_stock ": True}, {" name ":" Armario negro "," in_stock ": True}, {" name ":" Negro Mesita de noche "," in_stock ": False}] in_stock = [] 

La lista & ldquo; in_stock & rdquo; está actualmente vacía. Esto se debe a que aún no hemos calculado qué artículos en stock deberían estar agregado a la lista.

A continuación, usamos un bucle for para buscar elementos en la lista de & ldquo; artículos para el hogar & rdquo; que están en stock. Agregaremos esos elementos a la lista & ldquo; in_stock & rdquo;:

 para h en artículos para el hogar: if h ["in_stock"] == True: in_stock.append [h] print (in_stock) 
 

Usamos el método append () para agregar un registro al archivo & ldquo; in_stock & rdquo; enumere si ese artículo está en stock. De lo contrario, nuestro programa no agrega un registro al archivo & ldquo; in_stock & rdquo; lista. Luego, nuestro programa imprime todos los objetos en el archivo & ldquo; in_stock & rdquo; list.

Ejecutemos nuestro código y veamos qué sucede:

 Traceback (última llamada más reciente): archivo "main.py", línea 10, en & lt; módulo & gt; in_stock.append [h] TypeError: el objeto 'builtin_function_or_method' no es subscriptable 

Nuestro código devuelve un error.

Eche un vistazo a la línea de código que apunta Python a en el error:

 in_stock.append [h] 

Hemos intentado utilizar la sintaxis de indexación para agregar un elemento a nuestro archivo & ldquo; in_stock & rdquo; list variable . Esto es incorrecto porque las funciones no son objetos iterables. Para llamar a una función, necesitamos usar paréntesis.

Solucionamos este problema reemplazando los corchetes con paréntesis:

 in_stock.append (h) 

Ejecutemos nuestro código:

 [{' name': 'Grey Lampshade',' in_stock': True}, {'name':' Black Wardrobe', 'in_stock': True} ] 

Nuestro código calcula correctamente los artículos en stock. Esos elementos se agregan a la etiqueta & ldquo; in_stock & rdquo; lista que se imprime en la consola.







Conclusión

El error & ldquo; TypeError: & lsquo; builtin_function_or_method & rsquo; el objeto no es subscriptable & rdquo; aparece cuando intenta usar corchetes para llamar a una función.

Este error se genera porque Python interpreta los corchetes como una forma de acceder a elementos desde un objeto iterable. Las funciones deben llamarse usando paréntesis. Para solucionar este problema, asegúrese de llamar a una función usando paréntesis.

Ahora está listo para resolver este problema común ¡Error de Python como un experto!





Python 3 funciones integradas: StackOverflow Questions

Tutorials