Reference library

Python Code Samples

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

1055 matches
Auth & security at scale easy

How to Hash Passwords with bcrypt in Python

Hash a plaintext password with bcrypt using a randomly generated salt, then verify a plaintext attempt against the stored hash.

bcrypt password security
Python
import bcrypt

def hash_password(password: str) -> str:
    """Hash a password using bcrypt with a generated salt."""
    salt = bcrypt.gensalt()
    return bcrypt.hashpw(password.encode("utf-8"), salt).decode("utf-8")

def check_password(password: str, hashed: str) -> bool:
    """Verify a plaintext password against …
15 0 Open
Auth & security at scale easy

How to Hash and Verify Passwords in Python

Hash passwords securely with PBKDF2-SHA256 and verify them using a constant-time comparison.

password-hashing security pbkdf2
Python
import hashlib
import hmac
import secrets
from typing import Tuple


def hash_password(password: str, salt: str = None) -> Tuple[str, str]:
    """Hash a password with a random salt using PBKDF2-SHA256."""
    salt = salt or secrets.token_hex(16)
    hashed = hashlib.pbkdf2_hmac(
        "sha256", password.encode("utf…
15 0 Open
Auth & security at scale easy

How to Implement an HSTS Preload List Mock in Python

Implements a mock HSTS preload list in Python that supports adding, removing, checking domains with subdomain inheritance, and listing domains.

hsts security domains
Python
import json

class HSTSPreloadList:
    def __init__(self):
        self.domains = {}

    def add_domain(self, domain, include_subdomains=False, max_age=31536000):
        self.domains[domain] = {
            "include_subdomains": include_subdomains,
            "max_age": max_age
        }

    def remove_domain(sel…
18 0 Open
Auth & security at scale easy

How to Mock a Content Security Policy Header in Python

Mock a Content-Security-Policy header locally and verify it's served correctly using Python's built-in HTTP server.

csp http-server security-headers
Python
import json
from http.server import BaseHTTPRequestHandler, HTTPServer

CSP_HEADER = "default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'"

class MockServer(BaseHTTPRequestHandler):
    def do_GET(self):
        if self.path == "/":
            self.send_response(200)
            self.send_header("…
18 0 Open
Auth & security at scale easy

How to Mock a Permissions Policy in Python

A lightweight Python class that simulates a browser Permissions-Policy header by tracking allowed/ denied feature permissions with get, set, reset, and bulk operations.

permissions-policy mock security
Python
class PermissionsPolicy:
    def __init__(self):
        self._features = {
            "geolocation": "self",
            "camera": "self",
            "microphone": "self",
            "payment": "self",
            "usb": "self",
        }

    def get_feature_policy(self, feature):
        return self._features.ge…
15 0 Open
Auth & security at scale easy

How to Mock a TLS Certificate Rotation Schedule in Python

Simulate a TLS certificate rotation schedule with a Python class that tracks last and next rotation dates and decides when to rotate.

tls certificates rotation
Python
import datetime
import random
import time


class CertRotator:
    def __init__(self, cert_name, rotation_days=30):
        self.cert_name = cert_name
        self.rotation_days = rotation_days
        self.last_rotated = datetime.date.today() - datetime.timedelta(days=random.randint(10, 25))
        self.next_rotatio…
17 0 Open
Auth & security at scale easy

How to Revoke Tokens with a Blacklist Set in Python

A minimal TokenBlacklist class using a Python set to revoke, batch-revoke, check, and remove expired tokens for simple token invalidation.

jwt blacklist authentication
Python
import time

class TokenBlacklist:
    def __init__(self):
        self.blacklisted_tokens = set()

    def revoke(self, token):
        self.blacklisted_tokens.add(token)
        print(f"Token {token} revoked. Blacklist size: {len(self.blacklisted_tokens)}")

    def revoke_batch(self, tokens):
        before = len(s…
16 0 Open
Auth & security at scale easy

How to Salt Passwords per User in Python

Hash each user's password with a unique random salt using hashlib, and verify logins with timing-safe comparison.

password-hashing security authentication
Python
import hashlib
import secrets

def hash_password(password: str, salt: str | None = None) -> tuple[str, str]:
    """Hash a password with a random salt (or provided salt).

    Returns:
        (salt_hex, password_hash_hex)
    """
    if salt is None:
        salt = secrets.token_hex(16)
    salted = (salt + password)…
15 0 Open
Auth & security at scale easy

How to Set X-Frame-Options DENY in Flask with a Mock Response

Set the X-Frame-Options header to DENY in a Flask response to prevent clickjacking, and verify it with Flask's test client.

flask security headers
Python
from flask import Flask, Response

app = Flask(__name__)

@app.route("/")
def index():
    response = Response("Hello, World!")
    response.headers["X-Frame-Options"] = "DENY"
    return response

if __name__ == "__main__":
    with app.test_client() as client:
        resp = client.get("/")
        print(resp.get_da…
13 0 Open
Auth & security at scale easy

How to Set a SameSite Cookie in Python

Set a SameSite cookie attribute in Python using the standard library's SimpleCookie class.

cookies samesite http
Python
from http.cookies import SimpleCookie

def set_same_site_cookie(name, value, same_site="Lax"):
    cookie = SimpleCookie()
    cookie[name] = value
    cookie[name]["path"] = "/"
    cookie[name]["samesite"] = same_site
    return cookie[name].OutputString()

if __name__ == "__main__":
    print(set_same_site_cookie("…
13 0 Open
Auth & security at scale easy

How to Verify Passwords in Constant Time in Python

Use hmac.compare_digest to verify passwords in constant time, preventing timing attacks that could reveal password length or character positions.

security authentication timing-attacks
Python
import hmac
import time

# Mock of a constant-time password comparison (prevents timing attacks)
def verify_password(stored_password: str, supplied_password: str) -> bool:
    # hmac.compare_digest runs in constant time (for a given length)
    return hmac.compare_digest(stored_password.encode(), supplied_password.enc…
20 0 Open
Auth & security at scale easy

How to mock short TTL access tokens in Python

Simulate short-lived access tokens with a TTL, issue and validate them, and watch expiry behavior.

auth tokens expiry
Python
import time
import uuid
from datetime import datetime, timedelta


class AccessTokenManager:
    def __init__(self, ttl_seconds=30):
        self.ttl_seconds = ttl_seconds
        self.tokens = {}

    def issue_token(self):
        token_id = uuid.uuid4().hex
        expiry = datetime.now() + timedelta(seconds=self.t…
18 0 Open
Production deployment patterns easy

How to Attach an SBOM to a Release in Python (Mock)

A mock function that attaches a Software Bill of Materials (SBOM) to a GitHub-style release by counting its components and marking the upload as attached.

sbom release json
Python
import json
from pathlib import Path


def attach_sbom_mock(sbom_path: Path, release_tag: str, artifact_name: str) -> dict:
    """Mock attaching an SBOM to a release, returning the simulated upload result."""
    sbom = json.loads(sbom_path.read_text())
    return {
        "release_tag": release_tag,
        "artifa…
15 0 Open
Production deployment patterns easy

How to Build a Data Helper for Production Deployment in Python

Build a reusable DataHelper class that loads configs, validates required keys, normalizes string values, and logs schema details — a production-ready data processing pattern.

json pathlib data-processing
Python
import json
from pathlib import Path
from typing import Any, Dict

class DataHelper:
    """Common data processing patterns for production deployment."""
    
    def __init__(self, config_path: str | Path):
        self.config_path = Path(config_path)
        self.config = self._load_config()
    
    def _load_confi…
15 0 Open
Production deployment patterns easy

How to Build a Mock Trivy Image Scan Gate in Python

Simulate a Trivy image scan and enforce a security gate that fails the pipeline when vulnerabilities meet or exceed a severity threshold.

trivy security ci-cd
Python
import json
import sys


def mock_trivy_scan(image_name, severity_threshold="HIGH"):
    """Simulate a Trivy image scan result."""
    mock_vulnerabilities = [
        {"ID": "CVE-2023-1234", "Severity": "HIGH", "Package": "openssl", "FixedVersion": "3.0.9"},
        {"ID": "CVE-2024-5678", "Severity": "CRITICAL", "Pa…
17 0 Open
Production deployment patterns easy

How to Build a Simple Data Helper Class in Python

A beginner-friendly DataHelper class that safely saves and loads JSON files with automatic directory creation, perfect for production-style file handling.

json file-handling data-persistence
Python
from pathlib import Path
import json


class DataHelper:
    """Simple production-style helper for loading and saving JSON data."""

    def __init__(self, data_dir="data"):
        self.data_dir = Path(data_dir)
        self.data_dir.mkdir(exist_ok=True)

    def save(self, filename, data):
        filepath = self.da…
14 0 Open
Production deployment patterns easy

How to Build a Simple Data Helper Class in Python

A beginner-friendly DataHelper class that stores Python dataclass objects as JSON records to disk, with load, add, and save methods.

dataclass json file-io
Python
import json
from dataclasses import dataclass, asdict
from pathlib import Path

@dataclass
class User:
    name: str
    age: int
    email: str

class DataHelper:
    def __init__(self, filepath: str = "data.json"):
        self.filepath = Path(filepath)
        self._data = self._load()
    
    def _load(self) -> l…
14 0 Open
Production deployment patterns easy

How to Build a Synthetic Monitor Mock in Python

Simulates a synthetic monitoring system in Python that collects latency samples, averages them, and reports service status as UP or DEGRADED.

monitoring dataclass simulation
Python
import random
import time
from dataclasses import dataclass, field
from statistics import mean


@dataclass
class SyntheticMonitor:
    service: str
    endpoint: str
    latency_ms: list[float] = field(default_factory=list)

    def check(self) -> float:
        latency = random.uniform(50.0, 250.0)
        self.late…
15 0 Open
Production deployment patterns easy

How to Create a Liveness Probe HTTP Mock in Python

Build a lightweight HTTP server in Python that mimics a Kubernetes-style liveness endpoint, returning JSON health status for local testing.

http healthcheck mock-server
Python
import http.server
import threading
import time


class LivenessHandler(http.server.BaseHTTPRequestHandler):
    def do_GET(self):
        if self.path == "/healthz":
            self.send_response(200)
            self.send_header("Content-Type", "application/json")
            self.end_headers()
            self.wfi…
16 0 Open
Production deployment patterns easy

How to Deploy Staging Then Production in Python

Walk through a staged deployment mock that promotes from staging to production in sequence with Python.

deployment staging production
Python
import time

def deploy_environment(name: str) -> None:
    print(f"Deploying to {name}...")
    time.sleep(0.1)
    print(f"Deployed to {name} ✔")

def deploy_staging_then_prod() -> None:
    environments = ["staging", "production"]
    for env in environments:
        deploy_environment(env)
        if env == "stagi…
17 0 Open
Production deployment patterns easy

How to Generate a Kubernetes Deployment Manifest in Python

Generate a Kubernetes Deployment manifest as YAML from a Python dictionary using PyYAML.

kubernetes yaml deployment
Python
import yaml

deployment = {
    "apiVersion": "apps/v1",
    "kind": "Deployment",
    "metadata": {
        "name": "mock-app",
        "labels": {"app": "mock-app"}
    },
    "spec": {
        "replicas": 3,
        "selector": {
            "matchLabels": {"app": "mock-app"}
        },
        "template": {
      …
14 0 Open
Production deployment patterns easy

How to Implement a Data Helper Class in Python for Production Deployments

Build an environment-aware data helper in Python that loads config, extracts, transforms, and reports on JSON data using small, testable functions.

data-helper production json
Python
"""Production-style data helper for beginners.

Demonstrates:
- environment-aware config
- central data extraction
- small, testable functions
"""

import os
import json
from pathlib import Path
from typing import List, Dict, Any


def load_config(env: str = os.getenv("APP_ENV", "development")) -> Dict[str, Any]:
    …
15 0 Open
Production deployment patterns easy

How to Implement a Manual Approval Gate Mock in Python

Simulates a manual approval workflow with threshold-based rules, random decisions for medium amounts, and logs each result with timing.

approval simulation workflow
Python
import random
import time


def approve_request(amount: float) -> bool:
    if amount <= 1000:
        return True
    if amount <= 5000:
        return random.random() < 0.7
    return False


def main():
    requests = [500, 1200, 7500, 3000, 50]
    for amount in requests:
        start = time.perf_counter()
      …
19 0 Open
Production deployment patterns easy

How to Merge Helm Chart Values Per Environment in Python

Merge default Helm chart values with environment-specific overrides using a recursive dictionary merge function, then write each environment's YAML file.

helm merge yaml
Python
from pathlib import Path
import json
import tempfile


DEFAULT_VALUES = {
    "image": "nginx:latest",
    "replicas": 1,
    "resources": {"cpu": "100m", "memory": "128Mi"},
}

ENV_OVERRIDES = {
    "dev": {"replicas": 1, "resources": {"cpu": "50m"}},
    "staging": {"replicas": 2, "resources": {"cpu": "250m", "memor…
13 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.