Home >Backend Development >Python Tutorial >Is there a stack in python?

Is there a stack in python?

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-06-13 17:44:144340browse

In the English dictionary, Stack means placing an object on top of another object. The way memory is allocated in this data structure is the same. It stores data elements in a similar way to a stack of dishes in the kitchen: one on top of the other. Therefore, the end of the stack data that allows operations can be called the top of the stack. Elements can be added to the top of the stack or simply removed from the stack.

Is there a stack in python?

In a stack, the last element in sequence will appear first because it can only be removed from the top of the stack. This functionality is called last-in-first-out (LIFO) functionality. The operations of adding and removing elements are called PUSH and POP. In the program below, we implement it as add and remove functions. First declare an empty list and use the append() and pop() methods to add and remove data elements.

Push into the stack

class Stack:
    def __init__(self):
        self.stack = []
    def add(self, dataval):# Use list append method to add element
        if dataval not in self.stack:
            self.stack.append(dataval)
            return True
        else:
            return False# Use peek to look at the top of the stack
    def peek(self):     
        return self.stack[0]AStack = Stack()AStack.add("Mon")AStack.add("Tue")AStack.peek()print(AStack.peek())AStack.add("Wed")AStack.add("Thu")print(AStack.peek())Python

Execute the above example code and get the following results-

Mon
MonShell

Related recommendations: "python video tutorial

Stack removal

Only data elements can be removed from the stack. A python program that can achieve this function is implemented below. The remove function in the following program returns the topmost element. First check the top element by calculating the size of the stack, then use the built-in pop() method to find out the topmost element. Refer to the following code implementation

class Stack:
    def __init__(self):
        self.stack = []
    def add(self, dataval):# Use list append method to add element
        if dataval not in self.stack:
            self.stack.append(dataval)
            return True
        else:
            return False# Use list pop method to remove element
    def remove(self):
        if len(self.stack) <= 0:
            return ("No element in the Stack")
        else:
            return self.stack.pop()AStack = Stack()AStack.add("Mon")AStack.add("Tue")print(AStack.remove())AStack.add("Wed")AStack.add("Thu")print(AStack.remove())Python

Execute the above example code and get the following results

Tue
Thu

The above is the detailed content of Is there a stack in python?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn