Python 中的棧是一種數(shù)據(jù)結(jié)構(gòu),它基于后進先出(LIFO)原則,最新添加的元素最先被訪問。棧提供了 push 和 pop 操作,用于添加和刪除棧頂元素。Python 中的列表(list)可以用來實現(xiàn)棧。
# 創(chuàng)建一個空棧 stack = [] # 將元素添加到棧頂 stack.append('A') stack.append('B') stack.append('C') # 訪問棧頂元素 top_element = stack[-1] # 刪除棧頂元素 pop_element = stack.pop() # 檢查棧是否為空 is_empty = not bool(stack)
在 Python 中,還有一個內(nèi)置模塊 collections 中的 deque 類,它是一個雙端隊列,也可以用來實現(xiàn)棧。在 deque 中,可以通過 append 和 pop 方法實現(xiàn)在隊尾添加元素和刪除隊尾元素,也可以通過 appendleft 和 popleft 方法在隊頭添加元素和刪除隊頭元素。以下是使用 deque 實現(xiàn)棧的示例:
from collections import deque # 創(chuàng)建一個空棧 stack = deque() # 將元素添加到棧頂 stack.append('A') stack.append('B') stack.append('C') # 訪問棧頂元素 top_element = stack[-1] # 刪除棧頂元素 pop_element = stack.pop() # 檢查棧是否為空 is_empty = not bool(stack)
總之,Python 棧提供了一種方便易用的數(shù)據(jù)結(jié)構(gòu),用于按照后進先出的方式管理元素。使用列表或 deque 實現(xiàn)棧是很容易的,可以根據(jù)需要選擇適當(dāng)?shù)膶崿F(xiàn)方法。