diff --git a/Aufgabe03a.py b/Aufgabe03a.py index 68d4c92e431f49cbb1effd4f98108e2fa8f4d8d3..83f4a67469a6951063b4bd9d0e7f871c5d91b9e6 100644 --- a/Aufgabe03a.py +++ b/Aufgabe03a.py @@ -4,19 +4,14 @@ class Stack(): self.stack = l def __str__(self): - result = "" - max_length = 1 - if not self.isEmpty(): - max_length = len(str(max(self.stack, key=lambda x: len(str(x))))) - vert = "\u2502" - for ele in reversed(self.stack): - result += vert + str(ele).rjust(max_length) + vert + "\n" - return result + "\u2514" + "\u2500"*max_length + "\u2518" + return str(self.stack) def push(self, element): self.stack.append(element) def pop(self): + if self.isEmpty(): + raise ValueError("The Stack is empty!") element = self.stack[-1] del self.stack[-1] return element @@ -65,6 +60,8 @@ class StackList: self.first_element = ListElement(value, self.first_element) def pop(self): + if self.isEmpty(): + raise ValueError("The Stack is empty!") value = self.first_element.value self.first_element = self.first_element.next return value