I want to create a function here that allows me to specify the maximum size of the stack, how do I do it?
class MyStack:
def __init__(self):
self.myList = []
self.top = -1
self.size = 0
def isEmpty(self):
if (self.size > 0):
return False
else:
return True
def push(self, item):
self.myList.append(item)
self.size = self.size + 1
self.top = self.top + 1
def pop(self):
if self.isEmpty():
return None
else:
self.ret = self.myList.pop(self.top)
self.size = self.top - 1
self.top = self.top - 1
return self.ret
def peek(self):
if self.isEmpty():
return None
else:
return self.myList[self.top]
_init__
made me specify the size and I made it.
class MyStack:
def __init__(self, max_size):
self.myList = []
self.top = -1
self.size = 0
self.max_size = max_size
def isEmpty(self):
if self.size > 0:
return False
else:
return True
def push(self, item):
if self.max_size < self.size:
self.myList.append(item)
self.size = self.size + 1
self.top = self.top + 1
else:
raise ValueError('max size limit exceeded')
def pop(self):
if self.isEmpty():
return None
else:
self.ret = self.myList.pop(self.top)
self.size = self.top - 1
self.top = self.top - 1
return self.ret
def peek(self):
if self.isEmpty():
return None
else:
return self.myList[self.top]
If the size limit is applied, issue ValueError
.
© 2025 OneMinuteCode. All rights reserved.