ホームページ >バックエンド開発 >Python チュートリアル >Pythonスタックとはどういう意味ですか?
Python スタックとはどういう意味ですか?
スタックは特別なリストです。スタック内の要素は、アクセスはリストの一端 (スタックの最上位と呼ばれます) を介して行われます。このスタックは、後入れ先出し (LIFO、後入れ先出し) データ構造と呼ばれます。
スタックには後入れ先出しの特性があるため、スタックの先頭にない要素にはアクセスできません。スタックの一番下にある要素を取得するには、まず上の要素を削除する必要があります。
スタック上の 2 つの主な操作は、要素をスタックにプッシュすることと、要素をスタックからポップすることです。スタックにプッシュするにはpush()メソッドを使用し、スタックからポップアウトするにはpop()メソッドを使用します。
もう 1 つのよく使用される操作は、スタックの最上位にある要素をプレビューすることです。 Pop() メソッドはスタックの最上位の要素にアクセスできますが、このメソッドを呼び出した後、スタックの最上位の要素もスタックから完全に削除されます。 Peak() メソッドは、スタックの最上位要素のみを削除せずに返します。
スタックの最上位要素の位置を記録し、新しい要素を追加できる場所をマークするために、変数 top を使用します。要素がスタックにプッシュされると、変数は増加します。要素がスタックからポップされると、変数は減少します。
push()、pop()、peek() はスタックの 3 つの主要なメソッドですが、スタックには他のメソッドと属性もあります。
スタック 通常の操作:
Stack() 建立一个空的栈对象 push() 把一个元素添加到栈的最顶层 pop() 删除栈最顶层的元素,并返回这个元素 peek() 返回最顶层的元素,并不删除它 isEmpty() 判断栈是否为空 size() 返回栈中元素的个数
簡単なケースと操作結果:
ここで Python リストを使用します。オブジェクト シミュレーション スタック:
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)
スタック オブジェクトを作成し、操作メソッドを追加します:
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())
関連する推奨事項: 「Python チュートリアル 」
以上がPythonスタックとはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。