self.queue = collections.deque(maxlen=size)
Here is what the above code is Doing:
1. We create a class called Queue.
2. We create a constructor for this class. The constructor has one parameter, size.
3. We create an instance variable called queue. This is the data structure that will hold the queue.
4. We create a deque object. A deque is a double-ended queue. It is like a list that can grow and shrink on either end.
5. We pass the maxlen parameter to the deque. This tells the deque to only allow a certain number of items.
6. We pass the size parameter to the maxlen parameter. This means that the deque can only hold as many items as specified by the size parameter.