Maison  >  Article  >  développement back-end  >  Que signifie la pile Python ?

Que signifie la pile Python ?

藏色散人
藏色散人original
2019-06-24 11:07:547762parcourir

Que signifie la pile Python ?

Que signifie la pile python ?

La pile est une liste spéciale Les éléments de la pile ne peuvent être utilisés que. L'accès se fait par une extrémité de la liste, appelée le haut de la pile. La pile est appelée structure de données dernier entré, premier sorti (LIFO, dernier entré, premier sorti).

Étant donné que la pile a la caractéristique dernier entré, premier sorti, tout élément qui ne se trouve pas en haut de la pile n'est pas accessible. Afin d'obtenir l'élément en bas de la pile, l'élément au-dessus doit d'abord être supprimé.

Les deux opérations principales sur la pile consistent à pousser un élément sur la pile et à extraire un élément de la pile. Utilisez la méthode push() pour pousser sur la pile et pop() pour sortir de la pile.

Une autre opération couramment utilisée consiste à prévisualiser l'élément en haut de la pile. Bien que la méthode pop() puisse accéder à l'élément en haut de la pile, après avoir appelé cette méthode, l'élément en haut de la pile est également définitivement supprimé de la pile. La méthode peek() renvoie uniquement l’élément supérieur de la pile sans le supprimer.

Afin d'enregistrer la position de l'élément supérieur de la pile, et également de marquer où de nouveaux éléments peuvent être ajoutés, nous utilisons la variable top Lorsqu'un élément est poussé dans la pile, la variable augmente ; lorsqu'un élément est retiré de la pile, la variable diminue.

push(), pop() et peek() sont les trois méthodes principales de la pile, mais la pile a d'autres méthodes et propriétés.

Opérations de pile habituelles :

Stack()    建立一个空的栈对象
push()     把一个元素添加到栈的最顶层
pop()      删除栈最顶层的元素,并返回这个元素
peek()     返回最顶层的元素,并不删除它
isEmpty()  判断栈是否为空
size()     返回栈中元素的个数

Cas simple et résultats des opérations :

Ici, nous utilisons la liste python de la pile de simulation d'objet :

class Stack: 
    """模拟栈""" 
    def __init__(self): 
        self.items = [] 

    def isEmpty(self): 
        return len(self.items)==0  

    def push(self, item): 
        self.items.append(item) 

    def pop(self): 
        return self.items.pop()  

    def peek(self): 
        if not self.isEmpty(): 
            return self.items[len(self.items)-1] 

    def size(self): 
        return len(self.items)

Créez un objet de pile et ajoutez une méthode d'opération :

s=Stack() 
print(s.isEmpty()) 
s.push(4) 
s.push('dog') 
print(s.peek()) 
s.push(True) 
print(s.size()) 
print(s.isEmpty()) 
s.push(8.4) 
print(s.pop()) 
print(s.pop()) 
print(s.size())

Recommandations associées : "Tutoriel Python"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn