标签:ret 情况 特殊情况 切片 列表 实现 append 操作 list
class Stack(object):
def __init__(self):
self.__list = []
def push(self, item):
self.__list.append(item)
def pop(self):
return self.__list.pop()
def peek(self):
if self.__list:
return self.__list[-1]
else:
return None
def is_empty(self):
return self.__list == []
def size(self):
return len(self.__list)
"""实现栈-->顺序表-->python列表"""
class Stack(object):
def __init__(self):
"""创建一个空栈"""
self.__list = []
def push(self, item):
"""压栈"""
self.__list.append(item)
def pop(self):
"""弹栈"""
return self.__list.pop()
def peek(self):
"""返回栈顶元素"""
# 注意: 特殊情况:空列表是不支持切片操作的
if self.__list:
# 如果列表不为空
return self.__list[-1]
else:
return None
def is_empty(self):
"""是否为空栈"""
return self.__list == []
# 等价于 return not self.__list
def size(self):
"""返回栈的元素个数"""
return len(self.__list)
标签:ret 情况 特殊情况 切片 列表 实现 append 操作 list
原文地址:https://www.cnblogs.com/amou/p/8984836.html