Python使用list的append和pop方法创建堆栈和队列实例代码

时间:2023-02-15 19:52:39
#coding=utf8
'''
堆栈:
堆栈是一个后进先出(LIFO)的数据结构。
在栈上"push"元素是个常用术语,意思是把一个对象添加到堆栈中。
删除一个元素,可以把它"pop"出堆栈。

队列:
队列是一种先进先出(FIFO)的数据类型。
新的元素通过"入队"的方式添加进队列的末尾,
"出对"就是从队列的头部删除。
'''
#创建列表
def creatList():
initList=[]
try:
while True:
#从键上输入元素
inputItem=raw_input(u"Enter item(输入quit结束输入):")
#当输入字符不是quit,把元素加入列表
#当输入字符是quit,结束输入
if inputItem!="quit":
initList.append(inputItem.strip())
else:
break
#返回输入列表
return initList
except Exception,e:
print "Create List Error:",e

#删除列表的第一个元素并返回删除元素
def popTheFirst(List):
try:
#判断列表中是否存在元素
#如果存在元素,删除并返回第一个元素
#如果不存在,给出提示信息
if len(List)>0:
return List.pop(0)
else:
print "The list is empty..."
except Exception,e:
print "pop the first item Error:",e

#删除列表的最后元素并返回删除元素
def popTheLast(List):
try:
#判断列表中是否存在元素
#如果存在元素,删除并返回最后元素
#如果不存在,给出提示信息
if len(List)>0:
#pop函数默认删除最后一个元素
return List.pop()
else:
print "The list is empty..."
except Exception,e:
print "pop the last item Error:",e

#调用creatList函数创建表
listOne=creatList()
#输出创建表信息
print "The init list :",listOne
#调用popTheFirst函数删除并返回第一个元素
theFirst=popTheFirst(listOne)
#输出当前表的第一个元素
print "The first item of list:",theFirst
#调用popTheFirst函数删除并返回最后一个元素
theLast=popTheLast(listOne)
#输出当前表的最后一个元素元素
print "The last item of list:",theLast

'''
这里的listOne、theFirst、theLast都是全局变量
如果更改上述语句顺序会获取不到想要的结果。
'''