我试图将一个项目插入堆栈但是大小仍然是空的,在这种情况下输入是否插入到堆栈中?
加班我获得堆栈/列表的大小为空
def main_menu():
print('\nMenu:')
print('1. Push')
the_stack = Stack()
while True:
try:
command = int(input("\nEnter command:"))
if command == 1:
try:
ask = int(input("\nEnter an integer:"))
the_stack = Stack()
the_stack.push(ask)
print("item pushed")
print(the_stack.peek())
except ValueError:
print ("Enter Integer numbers only")
except ValueError:
print ('Please input a Number only')
else:
if 1 <= command < 5:
break
else:
print ('Enter command from 1 to 4 only')
class Node:
"""
The Node used for Linked List
"""
def __init__(self, item, link):
self.item = item
self.next = link
class Stack:
def push(self, item):
self.top = Node(item, self.top)
if __name__ == '__main__':
main_menu()
the_stack = Stack()
答案 0 :(得分:0)
你可以在python中使用list作为堆栈: 试试吧。
the_stack = []
ask = int(input("Enter an integer:"))
the_stack.append(ask)
print("Item Added")
只需使用for循环即可添加任意数量的项目。 从中删除项目。 使用
the_stack.pop()
它将从列表中删除最后添加的项目。
答案 1 :(得分:0)
Python中没有任何Stack方法。
但您可以将列表用作堆栈。请参阅以下链接 -
https://docs.python.org/2/tutorial/datastructures.html#using-lists-as-stacks