队列,堆栈python

时间:2014-03-15 18:36:32

标签: python stack queue

“您将编写Python类Queue。它将有两个插槽:stack1和stack2。您还将编写不带参数的maker函数mkQueue,并将两个插槽初始化为空堆栈。”所以,我有这个:,但我不确定是否要求我将参数留空或将堆叠放入其中?

class Queue():
    __slots__ = ('stack1', 'stack2')

def mkQueue(stack1, stack2):
    Queue.stack1 = stack1
    Queue.stack2 = stack2
    return Queue

1 个答案:

答案 0 :(得分:0)

这是向您迈出正确方向的一步,其中一些评论符合您的任务条款。这不太可能是您需要的完整实现,但它应该让您开始。

class Queue():
    __slots__ = ('stack1', 'stack2')

    def __init__(self): # You need to define an initialize method
        self.stack1 = []
        self.stack2 = []    

    # staticmethods are the only kinds of class methods that take no arguments
    @staticmethod  
    def mkQueue(): 
        return Queue()

用法:

>>> foo = Queue.mkQueue()
>>> foo.stack1
[]
>>> foo.stack2
[]
>>> foo.stack1 is foo.stack2
False