1.基于python列表实现栈:
#基于python的列表的栈; 后进先出 class Myqueque(): def __init__(self): self.qlist = [] def push(self,arg): self.qlist.append(arg) def pop(self): #把列表反转一下就类似队列了。但是就没有hand主的效果 # self.qlist.reverse() #有Hand主的效果了。 while True: try: data = self.qlist.pop() if data: return data except Exception: import time time.sleep(5) myque = Myqueque() myque.push(1) myque.push(2) myque.push(4) myque.push(7) myque.push(7) ret1 = myque.pop() ret2 = myque.pop() ret3 = myque.pop() ret4 = myque.pop() ret5 = myque.pop() # print(ret1,ret2,ret3,ret4) print(ret5)
基于redis列表的栈
import redis
conn = redis.Redis(host='127.0.0.1',port=6379,password='zh4350697')
class Myqueque():
def __init__(self):
self.conn =redis.Redis(host='127.0.0.1',port=6379,password='zh4350697')
def push(self,arg):
self.conn.lpush("queque",arg)
def pop(self):
_,data = self.conn.blpop("queque")
return data.decode('utf-8')
myque = Myqueque()
myque.push(1)
myque.push(2)
myque.push(4)
ret1 = myque.pop()
ret2 = myque.pop()
ret3 = myque.pop()
# ret4 = myque.pop()
print(ret1,ret2,ret3)
# print(ret4)
浙公网安备 33010602011771号