请问问题出现在哪了?

题目:Implement the Queue ADT, using a list such that the rear of the queue is at the end of the list
代码:
class Queue:
def init(self):
self.items = []

   def isEmpty(self):
       return self.items == []

   def enqueue(self, item):
       self.items.insert(0,item)

   def dequeue(self):
       return self.items.pop()

   def size(self):
       return len(self.items)

q=Queue()
q=Queue()

q.enqueue(4)
q.enqueue('dog')
q.enqueue(True)
print(q.size())
    请问为什么错了
 class Queue:
    def __init__(self):
       self.items = []

    def isEmpty(self):
       return self.items == []

    def enqueue(self, item):
       self.items.insert(0,item)

    def dequeue(self):
       return self.items.pop()

    def size(self):
       return len(self.items)

q=Queue()

q.enqueue(4)
q.enqueue('dog')
q.enqueue(True)
print(q.size())
print q.dequeue()
print(q.size())

输出:

3
4
2
     def __init__(self):
       self.items = []

Python的类构造函数是
def init(self):
self.items=[]