栈是线性表中的一种,它只允许在容器的一端加入数据
好像米缸一样,先倒进去的米最后才倒出来
栈的特点:先进后出
# 创建一个栈
class Stack(object):
# 初始化
def __init__(self):
# 使用列表来实现栈
self.__list = []
# 判断空值
def is_empty(self):
return self.__list == []
# 判断栈的大小
def size(self):
return len(self.__list)
# 进栈
def push(self,data):
self.__list.append(data)
# 出栈
def pop(self):
return self.__list.pop()
# 返回栈顶元素
def peek(self):
# 如果为空值,则返回特定值
if self.__list:
return self.__list[-1]
else:
return False
if __name__ == '__main__':
alist = Stack()
print(alist.is_empty())
alist.push(1)
alist.push(2)
alist.push(3)
print(alist.pop())
print(alist.size())
print(alist.peek())```