python栈的基本操作
时间: 2023-08-28 11:18:28 浏览: 112
Python中栈的基本操作包括入栈(push)、出栈(pop)、获取栈顶元素(speek)、判断栈是否为空(is_empty)和获取栈中元素个数(size)。可以使用数组实现栈的数据结构,也可以使用列表实现栈的功能。
使用数组实现栈的示例代码如下:
```python
class MyStack:
def __init__(self):
self.items = []
def isEmpty(self):
return len(self.items) == 0
def size(self):
return len(self.items)
def top(self):
if not self.isEmpty():
return self.items[len(self.items)-1]
else:
return None
def pop(self):
if len(self.items) > 0:
return self.items.pop()
else:
print("栈已为空!")
return None
def push(self, item):
self.items.append(item)
if __name__ == "__main__":
s = MyStack()
s.push(6)
s.push(3)
print("栈顶元素为:" + str(s.top()))
print("栈大小为:" + str(s.size()))
s.pop()
print("出栈成功!")
print("栈顶元素为:" + str(s.top()))
print("栈大小为:" + str(s.size()))
s.pop()
print("出栈成功!")
s.pop()
```
使用列表实现栈的示例代码如下:
```python
class Stack:
def __init__(self):
self.__list = []
def push(self, item):
self.__list.append(item)
def pop(self):
return self.__list.pop()
def speek(self):
return self.__list[-1]
def is_empty(self):
return not self.__list
def size(self):
return len(self.__list)
if __name__ == '__main__':
s = Stack()
c = 1
s.push('a')
s.push('b')
s.push(c)
print('size:', s.size())
print('speek:', s.speek())
print(s.pop())
print(s.pop())
print(s.pop())
print('size:', s.size())
```
以上是Python栈的基本操作的示例代码。可以根据需要选择使用数组实现栈,或者使用列表实现栈。<span class="em">1</span><span class="em">2</span>
#### 引用[.reference_title]
- *1* [python算法——实现栈的基本操作](https://blog.csdn.net/xjtuse123/article/details/98451560)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* [python 栈的基本操作](https://blog.csdn.net/qq_38779236/article/details/92693703)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文