Data Structures18 min read

Queue in Python

Understand queue (FIFO) using deque, why lists are not ideal for queues, and build a simple task queue like real apps.

David Miller
October 13, 2025
7.5k353

A queue follows FIFO:
First In, First Out.

Real examples:

  • ticketing systems
  • print queues
  • job scheduling
  • message processing

Why not use list for queue?

Removing from front of list can be slow.
collections.deque is designed for fast ends.

Queue with deque

from collections import deque

q = deque()
q.append("Task1")     # enqueue
q.append("Task2")
print(q)

first = q.popleft()   # dequeue
print(first)
print(q)

Example: task processing simulation

from collections import deque

tasks = deque(["email", "report", "backup"])

while tasks:
    task = tasks.popleft()
    print("Processing:", task)

Graph: queue FIFO

flowchart LR
  A[Enqueue] --> B[Queue] --> C[Dequeue]

Remember

  • Use deque for queues
  • append + popleft
  • queues are everywhere in systems
#Python#Intermediate#Queue