pila de Python

Funciones y métodos de Python

Las pilas son una estructura de datos importante con una amplia gama de usos.

En programación, las pilas le permiten almacenar datos en un orden de último en entrar, primero en salir (LIFO). Esto significa que el último elemento almacenado en una pila es el primero que se procesará.

Pero, ¿cómo se crea una pila en Python? Esa es la pregunta que vamos a responder en esta guía. Al final de la lectura de esta guía, será un experto en la creación y el trabajo con pilas en Python.




Python Stacks

Las pilas almacenan datos en una última entrada , pedido primero en salir (LIFO).

Para ayudarlo a comprender cómo funciona este pedido, considere una pila de platos. Cuando tenga una pila de platos para limpiar, el primer plato que moverá es el que está en la parte superior. Luego, a medida que mueva las placas, podrá acceder a las que están más abajo en la pila.

Las pilas son lo opuesto a las colas en Python. Las colas eliminan el elemento agregado menos recientemente (porque usan la estructura de primero en entrar, primero en salir), mientras que las pilas eliminan el elemento agregado más recientemente (porque usan la estructura de último en entrar, primero en salir).

Las pilas suelen admitir dos operaciones: push y pop. Empujar le permite agregar un elemento en la parte superior de una pila, y hacer estallar le permite eliminar el elemento en la parte superior de la pila.

En Python, hay dos enfoques principales que puede usar para crear una pila: usando listas integradas y usando la clase collections.deque () . Analicemos cómo funciona cada uno de estos enfoques.

El 81% de los participantes afirmó que se sentía más seguro acerca de sus perspectivas laborales después de asistir a un campamento de entrenamiento. Asóciese 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.

La lista de datos incorporada type te permite crear una pila en Python.


Debido a que las listas de Python se implementan como matrices, puede agregar y eliminar elementos fácilmente. Además, se conservará el orden en el que inserta los valores en una lista, lo que significa que puede eliminar fácilmente los primeros y últimos elementos de una lista.

Supongamos que queremos crear una pila que almacene una lista de tareas en una clase. El profesor quiere calificar estas tareas en el orden en que aparecen la pila (por lo tanto, la tarea entregada primero estará en la parte inferior de la pila, y la tarea entregada en último lugar estará en la parte superior de la pila).

Agregar elementos a la pila < / h3>

Para agregar elementos a una pila, podemos usar el método append () . Podríamos crear nuestra pila de tareas con el siguiente código:

 asignaciones = [ ] asignaciones.append ("Hannah") asignaciones.append ("Benny") asignaciones.append ("Gordon") imprimir (asignaciones) 

Nuestro código devuelve:

 ['Hannah',' Benny', 'Gordon'] 

En nuestro código, primero declaramos una lista llamada asignaciones . Luego, usamos el método append () para agregar tres nombres a nuestra lista de asignaciones que se han entregado. Los nombres que agregamos son, en orden: Hannah, Benny, Gordon. Dado que Gordon entregó su tarea en último lugar, aparece en la posición final de nuestra lista.

Eliminar elementos de la pila

Supongamos que hemos calificado la tarea de Gordon y queremos saber cuál está al lado del grado. Esto implica eliminar el elemento en la parte superior de nuestra pila.

Para eliminar un elemento de nuestra pila, podemos usar el método pop () . Aquí está el código que podríamos usar para eliminar el elemento superior de nuestra pila:

 asignaciones = [] asignaciones .append ("Hannah") asignaciones.append ("Benny") asignaciones.append ("Gordon") asignaciones.pop () imprimir (asignaciones) 

Nuestro código devuelve:

 ['Hannah',' Benny'] 

El nombre de Gordon tiene se ha eliminado de la pila usando pop () , por lo que nuestra pila ahora solo contiene dos nombres: Hannah y Benny.





collections.deque Class

La clase deque en la biblioteca de colecciones le permite crear una cola de dos extremos.

El objeto deque se implementa como una lista doblemente vinculada, lo que significa que tiene un rendimiento sólido y consistente al insertar y eliminar elementos. Además, debido a que la biblioteca de colecciones es parte de la Biblioteca estándar de Python, puede importarla a su código sin tener que descargar una biblioteca externa.

Para trabajar con la clase collections.deque , primero debemos importarla a nuestro código usando una declaración de importación:

 de las colecciones import deque 

Volvamos a nuestro ejemplo de tarea de antes para ilustrar cómo La clase collections.deque funciona.

Agregar elementos a una pila de Deque

Para agregar elementos a una pila deque, podemos usar el método append () . Supongamos que queremos crear una cola con nuestras asignaciones de tareas usando la clase deque. Podríamos hacerlo usando este código:

 de colecciones import deque assignments = deque () assignments.append (" Hannah ") asignaciones.append (" Benny ") asignaciones.append (" Gordon ") imprimir (asignaciones) 

Nuestro código devuelve:

 deque ([' Hannah', 'Benny',' Gordon']) 

Analicemos nuestro código . Primero, importamos la clase deque de la biblioteca de colecciones. Luego, creamos una deque usando deque () y la asignamos a la variable asignaciones .

A continuación, agregamos tres nombres a nuestra asignaciones deque: Hannah, Benny y Gordon. Finalmente, imprimimos el contenido de nuestra cola de tareas en la consola.

"Career Karma entró en mi vida cuando más lo necesitaba y rápidamente me ayudó a combinar con un bootcamp. Dos meses después de graduarme, ¡Encontré el trabajo de mis sueños que se alineaba con mis valores y metas en la vida! "

Venus, ingeniero de software en Rockbot

Puede ver que, en este ejemplo, nuestros datos se almacenan como una deque en lugar de una pila (denotado por el hecho de que nuestro resultado está encerrado en deque () ). Esto se debe a que estamos usando la estructura deque, aunque nuestros datos todavía actúan como una pila.

Eliminar elementos de una pila de deque

Para eliminar elementos de una pila de deque , puede utilizar el método pop () .


Supongamos que acabamos de calificar las tareas de Gordon y Benny. Para eliminarlas de nuestra pila, podríamos usar el siguiente código:

 de las colecciones importar deque asignaciones = deque () asignaciones.append (" Hannah ") asignaciones.append (" Benny ") asignaciones.append (" Gordon ") asignaciones. pop () asignaciones.pop () imprimir (asignaciones) 

Nuestro código devuelve:

 deque ([' Hannah']) 

En nuestro código, primero creamos una pila deque con tres valores. Luego, ejecutamos el pop () declaración dos veces. Cada vez que se ejecuta la instrucción pop () , el elemento en la parte superior de nuestra pila se elimina. Esto significa que los valores Gordon y luego Benny se eliminan de nuestra pila, dejando a Hann ah como el único elemento que queda en nuestra pila.

Para obtener más información sobre la clase deque de Python, lea nuestro tutorial sobre colas de Python y deques .




Conclusión

Las pilas le permiten almacenar datos en un orden de último en entrar, primero en salir. Hay varias formas de implementar una pila en Python, pero los dos enfoques más prácticos son usar la estructura de lista incorporada de Python o usar la clase collections.deque () .

Este tutorial discutió, con referencia a ejemplos, cómo crear una pila en Python usando listas y collections.deque () . ¡Ahora está listo para comenzar a crear sus propias pilas como un desarrollador profesional de Python!





pila de Python: StackOverflow Questions

Tutorials