Reference library

Python Code Samples

Easy snippets you can copy, study, and run in the browser editor.

1055 matches
Production deployment patterns easy

How to Mock Docker Image Non-Root User in Python

This Python class simulates Docker image layers and inspects whether the final user is a non-root user, returning UID, GID, and security status.

docker security mock
Python
from pathlib import Path


class DockerImageMock:
    def __init__(self, name, tag):
        self.name = name
        self.tag = tag
        self.layers = []
        self.user = "root"

    def add_file(self, path, content):
        self.layers.append({"file": path, "content": content})

    def set_user(self, usernam…
13 0 Open
Production deployment patterns easy

How to Mock Multi-Stage Docker Builds in Python

Simulate a multi-stage Docker build in pure Python using classes and temp directories to understand how build stages copy artifacts into a final image.

docker multi-stage simulation
Python
# Simulate multi-stage Docker build with pure Python
from pathlib import Path
import tempfile
import shutil

class BuildContext:
    """Mimics a Docker build context with stages."""
    
    def __init__(self, name):
        self.name = name
        self.files = {}
    
    def add_file(self, dest, content):
        s…
17 0 Open
Production deployment patterns easy

How to Mock Terraform Plan and Apply in Python

This code provides a lightweight Python mock of Terraform's plan and apply commands, helping you simulate infrastructure changes without real cloud resources.

terraform mock simulation
Python
class MockTerraform:
    def __init__(self):
        self.plans = [
            {"id": 1, "action": "create", "resource": "aws_instance.web"},
            {"id": 2, "action": "update", "resource": "aws_s3_bucket.data"},
            {"id": 3, "action": "destroy", "resource": "aws_iam_user.legacy"}
        ]
        sel…
15 0 Open
Production deployment patterns easy

How to Mock a CI Pipeline with Build, Test, and Deploy Stages in Python

Simulate a three-stage CI pipeline (build, test, deploy) in Python with random pass/fail logic, early exit on failure, and measured stage durations.

ci-cd simulation dataclasses
Python
import time
import random
from dataclasses import dataclass


@dataclass
class StageResult:
    name: str
    status: str
    duration: float


def run_stage(name: str, success_chance: float = 0.9) -> StageResult:
    """Simulate a pipeline stage with random success/failure."""
    start = time.time()
    time.sleep(r…
18 0 Open
Production deployment patterns easy

How to Mock a Container Registry in Python

Build an in-memory container registry mock with push, tag listing, and manifest retrieval logic for testing deployment tooling.

containers testing mocking
Python
import json
from collections import defaultdict


class MockRegistry:
    def __init__(self):
        self.repositories = defaultdict(dict)

    def push_image(self, repo: str, tag: str, layers: list[str]) -> None:
        self.repositories[repo][tag] = {
            "layers": layers,
            "size": sum(len(layer…
17 0 Open
Production deployment patterns easy

How to Mock a Dependency for Readiness Probe in Python

Use unittest.mock.Mock to simulate a dependency's readiness check response for testing a service's is_ready method without hitting a real connection.

unittest.mock mock readiness probe
Python
import time
import unittest
from unittest.mock import Mock

class Service:
    def __init__(self, dependency):
        self.dependency = dependency

    def is_ready(self):
        try:
            result = self.dependency.check()
            return result == "ready"
        except Exception:
            return False
…
19 0 Open
Production deployment patterns easy

How to Mock a Dockerfile Multi-Stage Build in Python

Simulate a Dockerfile multi-stage build process in Python using dataclasses to validate stage ordering and file availability before you write the real Dockerfile.

dockerfile multi-stage simulation
Python
from dataclasses import dataclass
from pathlib import Path


@dataclass
class BuildStage:
    name: str
    base_image: str
    files: list[str]
    commands: list[str]


def run_build(stage: BuildStage, context_dir: Path):
    print(f"=== Stage: {stage.name} (base: {stage.base_image}) ===")
    for file in stage.file…
17 0 Open
Production deployment patterns easy

How to Mock a Feature Flag Rollout Percentage in Python

Simulate a percentage-based feature flag rollout by hashing a user ID to deterministically enable features for a subset of users.

feature-flags rollout deterministic
Python
import random
from dataclasses import dataclass


@dataclass
class FeatureFlag:
    name: str
    rollout_percentage: int


def is_feature_enabled(feature_flag: FeatureFlag, user_id: str) -> bool:
    hashed_id = hash(user_id) % 100
    return hashed_id < feature_flag.rollout_percentage


if __name__ == "__main__":
  …
16 0 Open
Production deployment patterns easy

How to Mock a GitHub Actions Workflow in Python

Build a dataclass-based model of a GitHub Actions workflow and simulate its execution to validate steps and outputs before deployment.

github-actions dataclasses mock
Python
import json
from dataclasses import dataclass, asdict
from typing import List, Dict, Any


@dataclass
class Step:
    name: str
    run: str


@dataclass
class Job:
    name: str
    steps: List[Step]
    runs_on: str = "ubuntu-latest"


@dataclass
class Workflow:
    name: str
    jobs: List[Job]

    def to_github_a…
16 0 Open
Production deployment patterns easy

How to Mock a Kubernetes Rolling Update with maxSurge in Python

Simulate a Kubernetes rolling update with maxSurge policy, tracking peak and final replica counts during roll transitions.

kubernetes rolling-update maxsurge
Python
from collections import deque

class RollingUpdateMaxSurge:
    def __init__(self, replicas, max_surge):
        self.replicas = replicas
        self.max_surge = max_surge
        self.available = replicas
        self.history = deque()

    def roll(self, desired_replicas):
        """
        Simulate a rolling upd…
14 0 Open
Production deployment patterns easy

How to Mock a SIGTERM Handler in Python

Create a graceful shutdown handler for SIGTERM and SIGINT signals, then test it by simulating a signal delivery without terminating the process.

signals graceful-shutdown sigterm
Python
import signal
import time

class Service:
    def __init__(self):
        self.running = True

    def shutdown(self, signum, frame):
        print(f"Received signal {signum}, shutting down gracefully...")
        self.running = False

    def run(self):
        signal.signal(signal.SIGTERM, self.shutdown)
        sig…
16 0 Open
Production deployment patterns easy

How to Mock a Slow Startup Probe for Fast Testing in Python

This code shows how to replace a slow startup probe's initialization with a mock to make tests run fast and reliably.

mock testing startup-probe
Python
import time
from unittest.mock import Mock, patch


class StartupProbe:
    def __init__(self, init_time):
        self.init_time = init_time
        self.ready = False

    def initialize(self):
        time.sleep(self.init_time)
        self.ready = True
        return self.ready


def run_startup_probe(probe):
    …
18 0 Open
Production deployment patterns easy

How to Mock an Ingress TLS Certificate Manager in Python

Build a mock TLS certificate manager for ingress that issues, checks, and renews certificates with expiry tracking — useful for testing deployment workflows before touching real infrastructure.

tls certificates ingress
Python
import ssl
import socket
from datetime import datetime, timedelta


class TLSCertManager:
    def __init__(self, hostname):
        self.hostname = hostname
        self.certificates = {}

    def request_certificate(self, domain, days_valid=90):
        """Mock a certificate issuance request that stores a cert with e…
16 0 Open
Production deployment patterns easy

How to Mock time.sleep in a Python PreStop Hook

This code simulates a Kubernetes PreStop hook that delays shutdown, then mocks time.sleep to verify the hook logic without real delay.

mocking prestop kubernetes
Python
import subprocess
import sys
import time
from unittest.mock import patch

def pre_stop_hook():
    """Simulate a Kubernetes PreStop hook that sleeps before shutdown."""
    print("PreStop hook started: delaying shutdown")
    time.sleep(3)
    print("PreStop hook completed: ready to shutdown")

if __name__ == "__main_…
15 0 Open
Production deployment patterns easy

How to Replace Fields in an Immutable Dataclass in Python

Create a new copy of a frozen dataclass with selected fields changed, leaving the original unchanged.

dataclasses immutable configuration
Python
from dataclasses import dataclass, replace


@dataclass(frozen=True)
class ServerConfig:
    name: str
    cpu: int = 2
    ram: int = 4096
    tags: tuple = ()


original = ServerConfig("web-01", cpu=4, tags=("env:prod",))
updated = replace(original, ram=8192, tags=("env:prod", "region:us-east"))

print("Original:", …
20 0 Open
Production deployment patterns easy

How to Roll Back to a Previous Image Tag in Python

A dataclass-based mock registry that tracks image tag history and rolls back to the previous tag, useful for deployment rollback logic.

rollback deployment dataclass
Python
"""Demonstrates a rollback pattern for a Docker-style image tag registry."""

from dataclasses import dataclass, field


@dataclass
class ImageRegistry:
    """A minimal mock registry tracking current tags per image."""

    tags: dict[str, list[str]] = field(default_factory=dict)

    def push(self, image: str, tag: …
14 0 Open
Production deployment patterns easy

How to Simulate a Packer AMI Build in Python

A simple Python class that mimics a Packer AMI build lifecycle — creates a build object, transitions its state to completed, and prints a JSON snapshot.

packer ami mock
Python
import json


class PackerBuildMock:
    def __init__(self, name, ami_id, region="us-east-1", state="pending"):
        self.name = name
        self.ami_id = ami_id
        self.region = region
        self.state = state

    def build(self):
        if self.state == "pending":
            self.state = "completed"
  …
15 0 Open
Production deployment patterns easy

How to build a maintenance mode page in Python

Mock a service maintenance status page that computes remaining downtime and lists affected features from a simple class.

maintenance status datetime
Python
from datetime import datetime

class MaintenanceMode:
    """Mock a maintenance mode status page for a service."""
    
    def __init__(self, service_name: str, scheduled_end: str):
        self.service_name = service_name
        self.scheduled_end = datetime.fromisoformat(scheduled_end)
        self.affected_featur…
16 0 Open
Production deployment patterns easy

How to hide incomplete mock features with a Python feature toggle

A simple decorator-based feature toggle that returns a placeholder when a mock feature is disabled, so incomplete code can ship safely.

feature-toggle decorator mock-data
Python
import functools


class FeatureToggle:
    def __init__(self, enabled=False):
        self.enabled = enabled

    def feature(self, func=None):
        """Decorator to conditionally enable a feature."""
        if func is None:
            return self.feature

        @functools.wraps(func)
        def wrapper(*args,…
13 0 Open
Production deployment patterns easy

How to mock resource request limits in Python

A Python class that simulates CPU and memory limit checks for resource requests, returning clear acceptance or rejection messages.

resource-limits mock class
Python
class ResourceLimits:
    def __init__(self, cpu_limit, memory_limit):
        self.cpu_limit = cpu_limit
        self.memory_limit = memory_limit

    def check_request(self, cpu, memory):
        if cpu > self.cpu_limit:
            return "CPU limit exceeded: {cpu} > {limit}".format(cpu=cpu, limit=self.cpu_limit)
 …
15 0 Open
Production deployment patterns easy

How to simulate GitLab CI stages in Python

Build a lightweight Python mock of GitLab CI pipeline stages to test job sequencing and output locally.

gitlab ci simulation
Python
def mock_gitlab_ci_stages():
    stages = ["build", "test", "deploy"]
    stage_status = {}

    for stage in stages:
        jobs = []

        if stage == "build":
            jobs = ["compile", "package"]
        elif stage == "test":
            jobs = ["unit", "integration", "e2e"]
        elif stage == "deploy":…
17 0 Open
Production deployment patterns easy

How to simulate a Jenkins pipeline in Python

Simulate a Jenkins-style pipeline in Python by running sequential stages and checking aggregate success.

jenkins pipeline simulation
Python
def run_stage(name, duration, fn):
    print(f"[Pipeline] Running stage: {name}")
    result = fn()
    print(f"[Pipeline] Stage '{name}' completed in {duration}s -> {result}")
    return result

def build_project():
    print("  compiling source...")
    return "BUILD_OK"

def run_tests():
    print("  executing unit…
16 0 Open
Production deployment patterns easy

How to simulate a database migration init container mock in Python

A mock init container that runs environment checks and a staged database migration job before the main application starts, printing progress to stdout.

init-container migration simulation
Python
```python
class MigrationJob:
    def __init__(self, name, steps):
        self.name = name
        self.steps = steps
        self.current_step = 0
        self.status = "pending"

    def run(self):
        print(f"Initializing migration job: {self.name}")
        for step in self.steps:
            self.current_ste…
16 0 Open

Browse by section

Each section groups closely related Python snippets.

Guide: free Python code samples library

Copy-ready Python snippets for learners and developers

PythonSkillset code samples are short, focused examples organised by topic and difficulty. Every snippet is server-rendered HTML — readable by search engines and easy to copy. Open any sample, read the notes, copy the code, then press Try in editor to run it in the browser with Pyodide.

How to use this library

  1. Pick a topic section — strings, lists, files, functions, and more
  2. Open a sample, read How it works, and copy the code block
  3. Run it in the IDE, tweak values, then take a related quiz or tutorial lesson

Samples vs tutorials and challenges

Samples are quick reference — one concept per page. For step-by-step teaching, use our Python tutorials. To test yourself, try quizzes or coding challenges. Clean up style with the Python formatter.