Python concatenar listas

Funciones y métodos de Python

Las listas se pueden concatenar a otras listas . Esto significa que puede agregar el contenido de una lista a otra lista. Los valores con otros tipos de datos, como números enteros, no se pueden concatenar en una lista.

Si intenta concatenar un número entero en una lista, el intérprete de Python devuelve un & ldquo; TypeError: solo puede concatenar lista (no & ldquo; int & rdquo;) para listar & rdquo; error.

En esta guía, hablamos sobre lo que significa este error y cómo funciona. Analizamos un ejemplo para ayudarle a solucionar este problema en su código.




TypeError: solo puede concatenar lista (no & ldquo; int & rdquo;) a lista

La concatenación facilita agregue dos listas juntas. Si bien puede usar el método extend () para agregar una lista a otra lista, la concatenación solo requiere el uso de un símbolo: el signo más ( +).

Las listas no son el único objeto que se puede concatenar. Cualquier objeto iterable, como un diccionario o una tupla, se puede concatenar.

No se pueden concatenar dos objetos de diferentes tipos de datos. Esto significa que no puede concatenar una lista con un diccionario, o un número entero con una lista.

Se encuentra con & ldquo; TypeError: solo puede concatenar lista (no & ldquo; int & rdquo;) para lista & rdquo; si usa la concatenación para agregar un solo ítem entero a una lista.




Un escenario de ejemplo

Vamos a crear un programa que rastree cuántos pedidos se han realizado para sándwiches en particular en un café un viernes. Queremos filtrar todos los sándwiches que se pidieron más de 75 veces para poder ver qué sándwiches son los más populares.

El 81% de los participantes dijeron que se sentían más seguros de su trabajo tecnológico. prospectos después de asistir a un bootcamp. Asigne a un bootcamp hoy mismo.

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.

Comenzamos definiendo dos listas : una lista de sándwiches y una lista que contiene cuántos pedidos se hicieron para cada sándwich.

 sándwiches = ["Huevo y berro", "Club de pollo", "Hummus y tomate", "Queso"] orders = [54, 77, 22, 98] 

Nuestras listas están asignadas a las variables & ldquo; sandwiches & rdquo; y "pedidos". A continuación, definimos una lista que rastrea los números de índice de los sándwiches que se han pedido más de 75 veces.

 orders_75 = [] 

Por el momento, estas listas están vacías. Esto se debe a que aún no hemos descubierto qué sándwiches se han pedido más de 75 veces.


< / a>

A continuación, iteramos sobre nuestras listas de sándwiches y pedidos para averiguar qué sándwiches se han pedido más de 75 veces. Podemos hacer esto usando un for loop :

 para s en rango (0, len (sándwiches) ): si pedidos [s] & gt; 75: pedidos_75 = pedidos_75 + s 

Nuestro código recorre cada número en el rango de 0 y la longitud de la lista de & ldquo; sándwiches & rdquo ;. Si el valor correspondiente en la lista & ldquo; pedidos & rdquo; para un sándwich es mayor que 75, agregamos la posición de índice de ese sándwich a la lista & ldquo; pedidos_75 & rdquo;.

A continuación, escribimos un bucle que imprime qué sándwiches se han pedido más de 75 veces para comprobar si nuestro programa funciona:

 para o in orders_75: print (sandwiches [o]) 

Ejecutemos nuestro código Python y veamos qué sucede:

Nuestro código devuelve un error.




La solución

Eche un vistazo a la línea de código mencionada en nuestro mensaje de error:

 orders_75 = orders_75 + s 

Estamos intentando concatenar un valor entero en nuestra lista. . No podemos hacer esto porque la concatenación solo funciona en objetos iterables del mismo tipo de datos.

Para resolver este error, debemos usar el método append () para agregar un artículo a nuestra lista. Este método está diseñado específicamente para agregar elementos a listas. Los elementos pueden ser de cualquier tipo de datos, como diccionarios, enteros o números de punto flotante.

Cambie nuestra línea de código orders_75 para usar el método append () :

 orders_75.append (s) 

Nosotros no es necesario asignar ningún valor a & ldquo; orders_75 & rdquo; porque el método append () agrega un elemento a una lista en el lugar. Ejecutemos nuestro código:

 Chicken Club Cheese 

Nuestro código imprime una lista de los bocadillos que se han pedido más de 75 veces. Hay dos sándwiches que cumplen con este criterio: Chicken Club y Cheese.





Conclusión

El error & ldquo; TypeError: solo puede concatenar lista (no & ldquo; int & rdquo;) con lista & rdquo; cuando se intenta concatenar un entero para una lista.

Este error se genera porque solo las listas se pueden concatenar a listas. Para resolver este error, use el método append () para agregar un elemento a una lista. list.

¡Ahora está listo para resolver este error de Python como un profesional !



Python concatenar listas: StackOverflow Questions

Tutorials