-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstack.py
More file actions
47 lines (37 loc) · 954 Bytes
/
stack.py
File metadata and controls
47 lines (37 loc) · 954 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
from setuptools.sandbox import pushd
from pickle import POP
from idlelib.textView import view_file
stack = []
def pushit():
stack.append(input("enter new string:").strip())
def popit():
if len(stack) == 0:
print("cannot pop from an empty stack")
else:
print("Removed [", stack.pop(), "]")
def viewstack():
print(stack)
CMDs = {'u': pushit, 'o': popit, 'v':viewstack}
def showmenu():
pr="""
push
POP
view
quit
enter choice:"""
while True:
while True:
try:
choice = input("enter").strip().lower()
except(EOFError, KeyboardInterrupt, IndentationError):
choice = "q"
print("you picked:[%s]" % choice)
if choice not in "uovq":
print("Ivalid option, try again")
else:
break
if choice == "q":
break
CMDs[choice]()
if __name__ == "__main__":
showmenu()