如何在Python中打印方法的返回值?
嗨,团队,如何在Python中打印方法的返回值?,python,python-2.7,python-3.x,return,ipython,Python,Python 2.7,Python 3.x,Return,Ipython,嗨,团队, 我正在尝试上面的代码来检查队列,在这里我想打印每个周期删除哪个值。在打印时,我得不到任何帮助,请帮助我为我的期望做哪些更改。当您通过print Q.Dequeue()更改Q.Dequeue()时,您的代码对我有效。 更好的python应该是: class Queue(): def __init__(self): self.items = [] def isEmpty(self): return self.items == []
我正在尝试上面的代码来检查队列,在这里我想打印每个周期删除哪个值。在打印时,我得不到任何帮助,请帮助我为我的期望做哪些更改。当您通过
print Q.Dequeue()
更改Q.Dequeue()
时,您的代码对我有效。
更好的python应该是:
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)
如果您想知道要返回的内容,您需要将其保存在本地,打印保存的内容,然后返回保存的内容。比如:
from collections import deque
def hotspot(names, num):
queue = deque(reversed(names))
while len(queue)>1:
queue.rotate(num)
print queue.pop()
return queue.pop()
print hotspot(['A','B','C','D','E','F'], 7)
为什么不使用集合.deque?这个代码适合我。否
None
。提示:您的返回语句上面的循环是做什么的?嗨,丹尼尔,谢谢您的回复,是的,这段代码对我也有效。它最终将返回C,但我想一个接一个地打印删除的每一项,打印Q。退出队列,当将其放入程序中时,我得到C且无
x = Q.Dequeue()
print(x)
return x