【发布时间】:2014-09-28 23:17:18
【问题描述】:
class Queue():
def __init__(self):
self.items = []
def isEmpty(self):
return self.items == []
def Enqueue(self,item):
return self.items.insert(0, item)
def Size(self):
return len(self.items)
def Dequeue(self):
return self.items.pop()
Q = Queue()
def Hotpot(namelist,num):
for name in namelist:
Q.Enqueue(name)
while Q.Size() > 1:
for i in range(num):
Q.Enqueue(Q.Dequeue())
Q.Dequeue()
return Q.Dequeue() # I would like to print and see what is getting removed, I tried with x = Q.Dequeue(), print x and print Q.Dequeue() but im getting "None"
print Hotpot(['A','B','C','D','E','F'],7)
您好团队, 我正在尝试上面的代码来检查队列,在这里我想打印哪个值正在删除每个周期。打印时我没有得到任何东西,请帮助我为我的期望做些什么改变。
【问题讨论】:
-
你为什么不用
collections.deque? -
这段代码对我有用。没有
None。 -
提示:return 语句上方的循环有什么作用?
-
嗨丹尼尔,谢谢你的回复,是的,这段代码也适用于我,它最终会返回 C,但我想一个一个地打印每一个删除的项目,打印 Q.Dequeue,当把它放在程序中,我得到 C 和 None
标签: python python-2.7 python-3.x return ipython