| 1 | <!doctype html> |
| 2 | <html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"> |
| 3 | <title>Python Cheat Sheet</title> |
| 4 | <style> |
| 5 | :root{--bg:#07090d;--panel:#0e1319;--panel2:#111923;--text:#eef4f8;--muted:#9eafb9;--line:#20303b;--accent:#ffd43b;--blue:#4b8bbe;--shadow:0 16px 44px rgba(0,0,0,.32)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 12% 0,rgba(75,139,190,.14),transparent 30rem),radial-gradient(circle at 90% 0,rgba(255,212,59,.08),transparent 28rem),var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.hero{max-width:1500px;margin:auto;padding:46px 24px 26px}.badge{display:inline-block;border:1px solid rgba(255,212,59,.35);background:rgba(255,212,59,.08);color:var(--accent);padding:7px 10px;border-radius:999px;font:800 12px ui-monospace,monospace;letter-spacing:.08em}h1{font-size:clamp(40px,7vw,82px);line-height:.94;letter-spacing:-.055em;margin:18px 0}.hero p{max-width:900px;color:var(--muted);font-size:18px;line-height:1.6}.stats{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:11px 15px;box-shadow:var(--shadow)}.stat b{color:var(--accent);font-family:ui-monospace,monospace}.toolbar{position:sticky;top:0;z-index:20;background:rgba(7,9,13,.9);backdrop-filter:blur(16px);border-block:1px solid var(--line)}.toolbarin{max-width:1500px;margin:auto;padding:13px 24px;display:flex;gap:10px}#search{flex:1;min-width:0;background:#0a1015;border:1px solid #2a3d49;border-radius:12px;color:white;padding:13px 15px;font-size:15px;outline:none}#search:focus{border-color:var(--accent)}.toolbtn{border:1px solid #2a3d49;background:#0c1319;color:var(--text);border-radius:11px;padding:11px 13px;font-weight:800;cursor:pointer}.note{max-width:1500px;margin:20px auto 0;padding:0 24px}.notebox{border:1px solid rgba(75,139,190,.36);background:rgba(75,139,190,.08);border-radius:14px;padding:13px 15px;color:#c9dce8;font-size:13px}.layout{max-width:1500px;margin:auto;padding:22px 24px 42px;display:grid;grid-template-columns:270px 1fr;gap:22px}nav{position:sticky;top:76px;align-self:start;max-height:calc(100vh - 96px);overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:13px}nav strong{display:block;color:var(--accent);font:800 11px ui-monospace,monospace;padding:5px 9px 9px;letter-spacing:.08em}nav a{display:block;color:var(--muted);text-decoration:none;padding:7px 9px;border-radius:8px;font-size:12px}nav a:hover{background:#16202a;color:white}.section{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:rgba(14,19,25,.94);margin-bottom:17px;box-shadow:var(--shadow)}.sectionhead{width:100%;display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;border:0;background:linear-gradient(#141d26,#0f151b);color:white;padding:18px 20px;text-align:left;cursor:pointer;font-size:20px;font-weight:900}.sectionhead small{font:700 11px ui-monospace,monospace;color:var(--muted)}.sectionhead b{transition:.15s}.section.collapsed .sectionhead b{transform:rotate(-90deg)}.body{padding:15px}.section.collapsed .body{display:none}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.card{background:var(--panel2);border:1px solid #22323f;border-radius:14px;padding:13px;min-width:0}.card:hover{border-color:#395569}.cmdrow{display:flex;gap:10px;align-items:flex-start}pre{margin:0;flex:1;white-space:pre-wrap;word-break:break-word}code{color:var(--accent);font:800 13px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.copy{border:1px solid rgba(255,212,59,.28);background:#19170a;color:var(--accent);border-radius:8px;padding:5px 8px;font:800 10px ui-monospace,monospace;cursor:pointer}.card p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.hidden{display:none!important}footer{max-width:1500px;margin:auto;padding:0 24px 38px;color:#6d7f89;font-size:12px}@media(max-width:1000px){.layout{grid-template-columns:1fr}nav{position:static;max-height:none;display:flex;gap:5px;overflow:auto;white-space:nowrap}nav strong{display:none}nav a{display:inline-block}}@media(max-width:720px){.grid{grid-template-columns:1fr}.hero,.layout,.toolbarin,.note{padding-left:14px;padding-right:14px}.sectionhead{grid-template-columns:1fr auto}.sectionhead small{display:none}}@media print{.toolbar,nav,.copy{display:none!important}body{background:white;color:black}.layout{display:block;max-width:none}.card{background:white;border:1px solid #bbb}code{color:black}.card p{color:#333}} |
| 6 | </style></head><body> |
| 7 | <header class="hero"><span class="badge">PYTHON 3 MEGA REFERENCE</span><h1>Python<br>Cheat Sheet</h1><p>A huge searchable, copy-ready Python 3 reference covering syntax, collections, functions, OOP, files, JSON, regex, typing, async, testing, SQLite, CLI tools, and more.</p><div class="stats"><div class="stat"><b>409</b> snippets</div><div class="stat"><b>28</b> sections</div><div class="stat"><b>1</b> standalone HTML file</div></div></header> |
| 8 | <div class="toolbar"><div class="toolbarin"><input id="search" type="search" placeholder="Search Python syntax, libraries, snippets, or topics…"><button class="toolbtn" id="expand">Expand All</button><button class="toolbtn" id="collapse">Collapse All</button></div></div> |
| 9 | <div class="note"><div class="notebox"><b>Python note:</b> This targets modern Python 3. Optional third-party tools such as Requests, Black, and Ruff must be installed separately.</div></div> |
| 10 | <div class="layout"><nav><strong>JUMP TO SECTION</strong><a href="#basics---variables">Basics & Variables</a><a href="#operators---numbers">Operators & Numbers</a><a href="#strings">Strings</a><a href="#lists">Lists</a><a href="#tuples--sets---dicts">Tuples, Sets & Dicts</a><a href="#conditionals---loops">Conditionals & Loops</a><a href="#comprehensions">Comprehensions</a><a href="#functions">Functions</a><a href="#oop---classes">Oop & Classes</a><a href="#exceptions">Exceptions</a><a href="#files---pathlib">Files & Pathlib</a><a href="#json---csv">Json & Csv</a><a href="#datetime---time">Datetime & Time</a><a href="#regex">Regex</a><a href="#math---random">Math & Random</a><a href="#iterators---generators">Iterators & Generators</a><a href="#modules--venv---pip">Modules, Venv & Pip</a><a href="#typing---dataclasses">Typing & Dataclasses</a><a href="#os--sys---subprocess">Os, Sys & Subprocess</a><a href="#collections---functools">Collections & Functools</a><a href="#logging---cli">Logging & Cli</a><a href="#asyncio---concurrency">Asyncio & Concurrency</a><a href="#sqlite">Sqlite</a><a href="#testing">Testing</a><a href="#http-requests---third-party">Http Requests — Third Party</a><a href="#useful-built-ins---one-liners">Useful Built-Ins & One-Liners</a><a href="#common-pitfalls">Common Pitfalls</a><a href="#formatting---code-quality">Formatting & Code Quality</a></nav><main><section class="section" id="basics---variables"><button class="sectionhead"><span>Basics & Variables</span><small>19 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="basics & variables print('hello, world!') print output"><div class="cmdrow"><pre><code>print('Hello, world!')</code></pre><button class="copy" data-copy="print('Hello, world!')">COPY</button></div><p>Print output</p></article><article class="card" data-search="basics & variables name = 'ada' assign a string"><div class="cmdrow"><pre><code>name = 'Ada'</code></pre><button class="copy" data-copy="name = 'Ada'">COPY</button></div><p>Assign a string</p></article><article class="card" data-search="basics & variables age = 18 assign an integer"><div class="cmdrow"><pre><code>age = 18</code></pre><button class="copy" data-copy="age = 18">COPY</button></div><p>Assign an integer</p></article><article class="card" data-search="basics & variables price = 19.99 assign a float"><div class="cmdrow"><pre><code>price = 19.99</code></pre><button class="copy" data-copy="price = 19.99">COPY</button></div><p>Assign a float</p></article><article class="card" data-search="basics & variables active = true assign a boolean"><div class="cmdrow"><pre><code>active = True</code></pre><button class="copy" data-copy="active = True">COPY</button></div><p>Assign a boolean</p></article><article class="card" data-search="basics & variables value = none represent no value"><div class="cmdrow"><pre><code>value = None</code></pre><button class="copy" data-copy="value = None">COPY</button></div><p>Represent no value</p></article><article class="card" data-search="basics & variables x, y = 10, 20 multiple assignment"><div class="cmdrow"><pre><code>x, y = 10, 20</code></pre><button class="copy" data-copy="x, y = 10, 20">COPY</button></div><p>Multiple assignment</p></article><article class="card" data-search="basics & variables x, y = y, x swap values"><div class="cmdrow"><pre><code>x, y = y, x</code></pre><button class="copy" data-copy="x, y = y, x">COPY</button></div><p>Swap values</p></article><article class="card" data-search="basics & variables a = b = 0 assign one value to multiple names"><div class="cmdrow"><pre><code>a = b = 0</code></pre><button class="copy" data-copy="a = b = 0">COPY</button></div><p>Assign one value to multiple names</p></article><article class="card" data-search="basics & variables type(value) return an object's type"><div class="cmdrow"><pre><code>type(value)</code></pre><button class="copy" data-copy="type(value)">COPY</button></div><p>Return an object's type</p></article><article class="card" data-search="basics & variables isinstance(value, int) check an object's type"><div class="cmdrow"><pre><code>isinstance(value, int)</code></pre><button class="copy" data-copy="isinstance(value, int)">COPY</button></div><p>Check an object's type</p></article><article class="card" data-search="basics & variables id(value) return object identity"><div class="cmdrow"><pre><code>id(value)</code></pre><button class="copy" data-copy="id(value)">COPY</button></div><p>Return object identity</p></article><article class="card" data-search="basics & variables input('name: ') read keyboard input"><div class="cmdrow"><pre><code>input('Name: ')</code></pre><button class="copy" data-copy="input('Name: ')">COPY</button></div><p>Read keyboard input</p></article><article class="card" data-search="basics & variables int('42') convert text to integer"><div class="cmdrow"><pre><code>int('42')</code></pre><button class="copy" data-copy="int('42')">COPY</button></div><p>Convert text to integer</p></article><article class="card" data-search="basics & variables float('3.14') convert text to float"><div class="cmdrow"><pre><code>float('3.14')</code></pre><button class="copy" data-copy="float('3.14')">COPY</button></div><p>Convert text to float</p></article><article class="card" data-search="basics & variables str(123) convert a value to text"><div class="cmdrow"><pre><code>str(123)</code></pre><button class="copy" data-copy="str(123)">COPY</button></div><p>Convert a value to text</p></article><article class="card" data-search="basics & variables bool(value) convert a value to boolean"><div class="cmdrow"><pre><code>bool(value)</code></pre><button class="copy" data-copy="bool(value)">COPY</button></div><p>Convert a value to boolean</p></article><article class="card" data-search="basics & variables help(str) open built-in documentation"><div class="cmdrow"><pre><code>help(str)</code></pre><button class="copy" data-copy="help(str)">COPY</button></div><p>Open built-in documentation</p></article><article class="card" data-search="basics & variables dir(object) list available attributes"><div class="cmdrow"><pre><code>dir(object)</code></pre><button class="copy" data-copy="dir(object)">COPY</button></div><p>List available attributes</p></article></div></div></section><section class="section" id="operators---numbers"><button class="sectionhead"><span>Operators & Numbers</span><small>24 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="operators & numbers 7 + 3 addition"><div class="cmdrow"><pre><code>7 + 3</code></pre><button class="copy" data-copy="7 + 3">COPY</button></div><p>Addition</p></article><article class="card" data-search="operators & numbers 7 - 3 subtraction"><div class="cmdrow"><pre><code>7 - 3</code></pre><button class="copy" data-copy="7 - 3">COPY</button></div><p>Subtraction</p></article><article class="card" data-search="operators & numbers 7 * 3 multiplication"><div class="cmdrow"><pre><code>7 * 3</code></pre><button class="copy" data-copy="7 * 3">COPY</button></div><p>Multiplication</p></article><article class="card" data-search="operators & numbers 7 / 3 floating-point division"><div class="cmdrow"><pre><code>7 / 3</code></pre><button class="copy" data-copy="7 / 3">COPY</button></div><p>Floating-point division</p></article><article class="card" data-search="operators & numbers 7 // 3 floor division"><div class="cmdrow"><pre><code>7 // 3</code></pre><button class="copy" data-copy="7 // 3">COPY</button></div><p>Floor division</p></article><article class="card" data-search="operators & numbers 7 % 3 remainder / modulo"><div class="cmdrow"><pre><code>7 % 3</code></pre><button class="copy" data-copy="7 % 3">COPY</button></div><p>Remainder / modulo</p></article><article class="card" data-search="operators & numbers 7 ** 3 exponentiation"><div class="cmdrow"><pre><code>7 ** 3</code></pre><button class="copy" data-copy="7 ** 3">COPY</button></div><p>Exponentiation</p></article><article class="card" data-search="operators & numbers abs(-8) absolute value"><div class="cmdrow"><pre><code>abs(-8)</code></pre><button class="copy" data-copy="abs(-8)">COPY</button></div><p>Absolute value</p></article><article class="card" data-search="operators & numbers round(3.14159, 2) round to two decimal places"><div class="cmdrow"><pre><code>round(3.14159, 2)</code></pre><button class="copy" data-copy="round(3.14159, 2)">COPY</button></div><p>Round to two decimal places</p></article><article class="card" data-search="operators & numbers min(4, 2, 9) minimum"><div class="cmdrow"><pre><code>min(4, 2, 9)</code></pre><button class="copy" data-copy="min(4, 2, 9)">COPY</button></div><p>Minimum</p></article><article class="card" data-search="operators & numbers max(4, 2, 9) maximum"><div class="cmdrow"><pre><code>max(4, 2, 9)</code></pre><button class="copy" data-copy="max(4, 2, 9)">COPY</button></div><p>Maximum</p></article><article class="card" data-search="operators & numbers sum([1, 2, 3]) sum values"><div class="cmdrow"><pre><code>sum([1, 2, 3])</code></pre><button class="copy" data-copy="sum([1, 2, 3])">COPY</button></div><p>Sum values</p></article><article class="card" data-search="operators & numbers divmod(17, 5) return quotient and remainder"><div class="cmdrow"><pre><code>divmod(17, 5)</code></pre><button class="copy" data-copy="divmod(17, 5)">COPY</button></div><p>Return quotient and remainder</p></article><article class="card" data-search="operators & numbers pow(2, 8) raise to a power"><div class="cmdrow"><pre><code>pow(2, 8)</code></pre><button class="copy" data-copy="pow(2, 8)">COPY</button></div><p>Raise to a power</p></article><article class="card" data-search="operators & numbers x += 1 increment"><div class="cmdrow"><pre><code>x += 1</code></pre><button class="copy" data-copy="x += 1">COPY</button></div><p>Increment</p></article><article class="card" data-search="operators & numbers x -= 1 decrement"><div class="cmdrow"><pre><code>x -= 1</code></pre><button class="copy" data-copy="x -= 1">COPY</button></div><p>Decrement</p></article><article class="card" data-search="operators & numbers x *= 2 multiply and assign"><div class="cmdrow"><pre><code>x *= 2</code></pre><button class="copy" data-copy="x *= 2">COPY</button></div><p>Multiply and assign</p></article><article class="card" data-search="operators & numbers x /= 2 divide and assign"><div class="cmdrow"><pre><code>x /= 2</code></pre><button class="copy" data-copy="x /= 2">COPY</button></div><p>Divide and assign</p></article><article class="card" data-search="operators & numbers a == b equality comparison"><div class="cmdrow"><pre><code>a == b</code></pre><button class="copy" data-copy="a == b">COPY</button></div><p>Equality comparison</p></article><article class="card" data-search="operators & numbers a != b inequality comparison"><div class="cmdrow"><pre><code>a != b</code></pre><button class="copy" data-copy="a != b">COPY</button></div><p>Inequality comparison</p></article><article class="card" data-search="operators & numbers a < b <= c chained comparison"><div class="cmdrow"><pre><code>a < b <= c</code></pre><button class="copy" data-copy="a < b <= c">COPY</button></div><p>Chained comparison</p></article><article class="card" data-search="operators & numbers a and b logical and"><div class="cmdrow"><pre><code>a and b</code></pre><button class="copy" data-copy="a and b">COPY</button></div><p>Logical AND</p></article><article class="card" data-search="operators & numbers a or b logical or"><div class="cmdrow"><pre><code>a or b</code></pre><button class="copy" data-copy="a or b">COPY</button></div><p>Logical OR</p></article><article class="card" data-search="operators & numbers not a logical not"><div class="cmdrow"><pre><code>not a</code></pre><button class="copy" data-copy="not a">COPY</button></div><p>Logical NOT</p></article></div></div></section><section class="section" id="strings"><button class="sectionhead"><span>Strings</span><small>28 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="strings text = 'hello' create a string"><div class="cmdrow"><pre><code>text = 'hello'</code></pre><button class="copy" data-copy="text = 'hello'">COPY</button></div><p>Create a string</p></article><article class="card" data-search="strings text = "hello" double-quoted string"><div class="cmdrow"><pre><code>text = "hello"</code></pre><button class="copy" data-copy="text = "hello"">COPY</button></div><p>Double-quoted string</p></article><article class="card" data-search="strings text = '''multi |
| 11 | line''' multiline string"><div class="cmdrow"><pre><code>text = '''multi |
| 12 | line'''</code></pre><button class="copy" data-copy="text = '''multi |
| 13 | line'''">COPY</button></div><p>Multiline string</p></article><article class="card" data-search="strings text[0] first character"><div class="cmdrow"><pre><code>text[0]</code></pre><button class="copy" data-copy="text[0]">COPY</button></div><p>First character</p></article><article class="card" data-search="strings text[-1] last character"><div class="cmdrow"><pre><code>text[-1]</code></pre><button class="copy" data-copy="text[-1]">COPY</button></div><p>Last character</p></article><article class="card" data-search="strings text[1:4] slice a string"><div class="cmdrow"><pre><code>text[1:4]</code></pre><button class="copy" data-copy="text[1:4]">COPY</button></div><p>Slice a string</p></article><article class="card" data-search="strings text[::-1] reverse a string"><div class="cmdrow"><pre><code>text[::-1]</code></pre><button class="copy" data-copy="text[::-1]">COPY</button></div><p>Reverse a string</p></article><article class="card" data-search="strings len(text) string length"><div class="cmdrow"><pre><code>len(text)</code></pre><button class="copy" data-copy="len(text)">COPY</button></div><p>String length</p></article><article class="card" data-search="strings text.upper() uppercase"><div class="cmdrow"><pre><code>text.upper()</code></pre><button class="copy" data-copy="text.upper()">COPY</button></div><p>Uppercase</p></article><article class="card" data-search="strings text.lower() lowercase"><div class="cmdrow"><pre><code>text.lower()</code></pre><button class="copy" data-copy="text.lower()">COPY</button></div><p>Lowercase</p></article><article class="card" data-search="strings text.title() title case"><div class="cmdrow"><pre><code>text.title()</code></pre><button class="copy" data-copy="text.title()">COPY</button></div><p>Title case</p></article><article class="card" data-search="strings text.capitalize() capitalize first character"><div class="cmdrow"><pre><code>text.capitalize()</code></pre><button class="copy" data-copy="text.capitalize()">COPY</button></div><p>Capitalize first character</p></article><article class="card" data-search="strings text.strip() trim outer whitespace"><div class="cmdrow"><pre><code>text.strip()</code></pre><button class="copy" data-copy="text.strip()">COPY</button></div><p>Trim outer whitespace</p></article><article class="card" data-search="strings text.lstrip() trim left whitespace"><div class="cmdrow"><pre><code>text.lstrip()</code></pre><button class="copy" data-copy="text.lstrip()">COPY</button></div><p>Trim left whitespace</p></article><article class="card" data-search="strings text.rstrip() trim right whitespace"><div class="cmdrow"><pre><code>text.rstrip()</code></pre><button class="copy" data-copy="text.rstrip()">COPY</button></div><p>Trim right whitespace</p></article><article class="card" data-search="strings text.replace('old', 'new') replace text"><div class="cmdrow"><pre><code>text.replace('old', 'new')</code></pre><button class="copy" data-copy="text.replace('old', 'new')">COPY</button></div><p>Replace text</p></article><article class="card" data-search="strings text.split(',') split into a list"><div class="cmdrow"><pre><code>text.split(',')</code></pre><button class="copy" data-copy="text.split(',')">COPY</button></div><p>Split into a list</p></article><article class="card" data-search="strings ','.join(items) join strings"><div class="cmdrow"><pre><code>','.join(items)</code></pre><button class="copy" data-copy="','.join(items)">COPY</button></div><p>Join strings</p></article><article class="card" data-search="strings text.startswith('pre') test prefix"><div class="cmdrow"><pre><code>text.startswith('pre')</code></pre><button class="copy" data-copy="text.startswith('pre')">COPY</button></div><p>Test prefix</p></article><article class="card" data-search="strings text.endswith('.txt') test suffix"><div class="cmdrow"><pre><code>text.endswith('.txt')</code></pre><button class="copy" data-copy="text.endswith('.txt')">COPY</button></div><p>Test suffix</p></article><article class="card" data-search="strings 'cat' in text check substring membership"><div class="cmdrow"><pre><code>'cat' in text</code></pre><button class="copy" data-copy="'cat' in text">COPY</button></div><p>Check substring membership</p></article><article class="card" data-search="strings text.find('cat') find substring index"><div class="cmdrow"><pre><code>text.find('cat')</code></pre><button class="copy" data-copy="text.find('cat')">COPY</button></div><p>Find substring index</p></article><article class="card" data-search="strings text.count('a') count occurrences"><div class="cmdrow"><pre><code>text.count('a')</code></pre><button class="copy" data-copy="text.count('a')">COPY</button></div><p>Count occurrences</p></article><article class="card" data-search="strings f'hello {name}' basic f-string"><div class="cmdrow"><pre><code>f'Hello {name}'</code></pre><button class="copy" data-copy="f'Hello {name}'">COPY</button></div><p>Basic f-string</p></article><article class="card" data-search="strings f'{price:.2f}' format decimal places"><div class="cmdrow"><pre><code>f'{price:.2f}'</code></pre><button class="copy" data-copy="f'{price:.2f}'">COPY</button></div><p>Format decimal places</p></article><article class="card" data-search="strings f'{value:>10}' right-align in a field"><div class="cmdrow"><pre><code>f'{value:>10}'</code></pre><button class="copy" data-copy="f'{value:>10}'">COPY</button></div><p>Right-align in a field</p></article><article class="card" data-search="strings f'{number:,}' add thousands separators"><div class="cmdrow"><pre><code>f'{number:,}'</code></pre><button class="copy" data-copy="f'{number:,}'">COPY</button></div><p>Add thousands separators</p></article><article class="card" data-search="strings repr(text) developer-facing representation"><div class="cmdrow"><pre><code>repr(text)</code></pre><button class="copy" data-copy="repr(text)">COPY</button></div><p>Developer-facing representation</p></article></div></div></section><section class="section" id="lists"><button class="sectionhead"><span>Lists</span><small>23 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="lists items = [1, 2, 3] create a list"><div class="cmdrow"><pre><code>items = [1, 2, 3]</code></pre><button class="copy" data-copy="items = [1, 2, 3]">COPY</button></div><p>Create a list</p></article><article class="card" data-search="lists items[0] first item"><div class="cmdrow"><pre><code>items[0]</code></pre><button class="copy" data-copy="items[0]">COPY</button></div><p>First item</p></article><article class="card" data-search="lists items[-1] last item"><div class="cmdrow"><pre><code>items[-1]</code></pre><button class="copy" data-copy="items[-1]">COPY</button></div><p>Last item</p></article><article class="card" data-search="lists items[1:4] slice a list"><div class="cmdrow"><pre><code>items[1:4]</code></pre><button class="copy" data-copy="items[1:4]">COPY</button></div><p>Slice a list</p></article><article class="card" data-search="lists items.append(4) append one item"><div class="cmdrow"><pre><code>items.append(4)</code></pre><button class="copy" data-copy="items.append(4)">COPY</button></div><p>Append one item</p></article><article class="card" data-search="lists items.extend([4, 5]) append multiple items"><div class="cmdrow"><pre><code>items.extend([4, 5])</code></pre><button class="copy" data-copy="items.extend([4, 5])">COPY</button></div><p>Append multiple items</p></article><article class="card" data-search="lists items.insert(1, 'x') insert at index"><div class="cmdrow"><pre><code>items.insert(1, 'x')</code></pre><button class="copy" data-copy="items.insert(1, 'x')">COPY</button></div><p>Insert at index</p></article><article class="card" data-search="lists items.remove('x') remove first matching value"><div class="cmdrow"><pre><code>items.remove('x')</code></pre><button class="copy" data-copy="items.remove('x')">COPY</button></div><p>Remove first matching value</p></article><article class="card" data-search="lists items.pop() remove and return last item"><div class="cmdrow"><pre><code>items.pop()</code></pre><button class="copy" data-copy="items.pop()">COPY</button></div><p>Remove and return last item</p></article><article class="card" data-search="lists items.pop(0) remove and return by index"><div class="cmdrow"><pre><code>items.pop(0)</code></pre><button class="copy" data-copy="items.pop(0)">COPY</button></div><p>Remove and return by index</p></article><article class="card" data-search="lists items.clear() remove all items"><div class="cmdrow"><pre><code>items.clear()</code></pre><button class="copy" data-copy="items.clear()">COPY</button></div><p>Remove all items</p></article><article class="card" data-search="lists items.index('x') find index"><div class="cmdrow"><pre><code>items.index('x')</code></pre><button class="copy" data-copy="items.index('x')">COPY</button></div><p>Find index</p></article><article class="card" data-search="lists items.count('x') count values"><div class="cmdrow"><pre><code>items.count('x')</code></pre><button class="copy" data-copy="items.count('x')">COPY</button></div><p>Count values</p></article><article class="card" data-search="lists items.sort() sort in place"><div class="cmdrow"><pre><code>items.sort()</code></pre><button class="copy" data-copy="items.sort()">COPY</button></div><p>Sort in place</p></article><article class="card" data-search="lists items.sort(reverse=true) sort descending"><div class="cmdrow"><pre><code>items.sort(reverse=True)</code></pre><button class="copy" data-copy="items.sort(reverse=True)">COPY</button></div><p>Sort descending</p></article><article class="card" data-search="lists sorted(items) return a sorted copy"><div class="cmdrow"><pre><code>sorted(items)</code></pre><button class="copy" data-copy="sorted(items)">COPY</button></div><p>Return a sorted copy</p></article><article class="card" data-search="lists items.reverse() reverse in place"><div class="cmdrow"><pre><code>items.reverse()</code></pre><button class="copy" data-copy="items.reverse()">COPY</button></div><p>Reverse in place</p></article><article class="card" data-search="lists list(reversed(items)) return a reversed list"><div class="cmdrow"><pre><code>list(reversed(items))</code></pre><button class="copy" data-copy="list(reversed(items))">COPY</button></div><p>Return a reversed list</p></article><article class="card" data-search="lists items.copy() shallow-copy a list"><div class="cmdrow"><pre><code>items.copy()</code></pre><button class="copy" data-copy="items.copy()">COPY</button></div><p>Shallow-copy a list</p></article><article class="card" data-search="lists len(items) list length"><div class="cmdrow"><pre><code>len(items)</code></pre><button class="copy" data-copy="len(items)">COPY</button></div><p>List length</p></article><article class="card" data-search="lists 'x' in items membership test"><div class="cmdrow"><pre><code>'x' in items</code></pre><button class="copy" data-copy="'x' in items">COPY</button></div><p>Membership test</p></article><article class="card" data-search="lists items + other concatenate lists"><div class="cmdrow"><pre><code>items + other</code></pre><button class="copy" data-copy="items + other">COPY</button></div><p>Concatenate lists</p></article><article class="card" data-search="lists items * 3 repeat a list"><div class="cmdrow"><pre><code>items * 3</code></pre><button class="copy" data-copy="items * 3">COPY</button></div><p>Repeat a list</p></article></div></div></section><section class="section" id="tuples--sets---dicts"><button class="sectionhead"><span>Tuples, Sets & Dicts</span><small>23 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="tuples, sets & dicts point = (10, 20) create a tuple"><div class="cmdrow"><pre><code>point = (10, 20)</code></pre><button class="copy" data-copy="point = (10, 20)">COPY</button></div><p>Create a tuple</p></article><article class="card" data-search="tuples, sets & dicts x, y = point unpack a tuple"><div class="cmdrow"><pre><code>x, y = point</code></pre><button class="copy" data-copy="x, y = point">COPY</button></div><p>Unpack a tuple</p></article><article class="card" data-search="tuples, sets & dicts single = (42,) one-item tuple"><div class="cmdrow"><pre><code>single = (42,)</code></pre><button class="copy" data-copy="single = (42,)">COPY</button></div><p>One-item tuple</p></article><article class="card" data-search="tuples, sets & dicts colors = {'red', 'green'} create a set"><div class="cmdrow"><pre><code>colors = {'red', 'green'}</code></pre><button class="copy" data-copy="colors = {'red', 'green'}">COPY</button></div><p>Create a set</p></article><article class="card" data-search="tuples, sets & dicts set([1, 1, 2]) remove duplicates"><div class="cmdrow"><pre><code>set([1, 1, 2])</code></pre><button class="copy" data-copy="set([1, 1, 2])">COPY</button></div><p>Remove duplicates</p></article><article class="card" data-search="tuples, sets & dicts colors.add('blue') add to a set"><div class="cmdrow"><pre><code>colors.add('blue')</code></pre><button class="copy" data-copy="colors.add('blue')">COPY</button></div><p>Add to a set</p></article><article class="card" data-search="tuples, sets & dicts colors.remove('red') remove or raise if missing"><div class="cmdrow"><pre><code>colors.remove('red')</code></pre><button class="copy" data-copy="colors.remove('red')">COPY</button></div><p>Remove or raise if missing</p></article><article class="card" data-search="tuples, sets & dicts colors.discard('red') remove safely if present"><div class="cmdrow"><pre><code>colors.discard('red')</code></pre><button class="copy" data-copy="colors.discard('red')">COPY</button></div><p>Remove safely if present</p></article><article class="card" data-search="tuples, sets & dicts a b|set union"><div class="cmdrow"><pre><code>a </code></pre><button class="copy" data-copy="a ">COPY</button></div><p> b|Set union</p></article><article class="card" data-search="tuples, sets & dicts a & b set intersection"><div class="cmdrow"><pre><code>a & b</code></pre><button class="copy" data-copy="a & b">COPY</button></div><p>Set intersection</p></article><article class="card" data-search="tuples, sets & dicts a - b set difference"><div class="cmdrow"><pre><code>a - b</code></pre><button class="copy" data-copy="a - b">COPY</button></div><p>Set difference</p></article><article class="card" data-search="tuples, sets & dicts a ^ b set symmetric difference"><div class="cmdrow"><pre><code>a ^ b</code></pre><button class="copy" data-copy="a ^ b">COPY</button></div><p>Set symmetric difference</p></article><article class="card" data-search="tuples, sets & dicts user = {'name': 'ada', 'age': 18} create a dictionary"><div class="cmdrow"><pre><code>user = {'name': 'Ada', 'age': 18}</code></pre><button class="copy" data-copy="user = {'name': 'Ada', 'age': 18}">COPY</button></div><p>Create a dictionary</p></article><article class="card" data-search="tuples, sets & dicts user['name'] read a dictionary value"><div class="cmdrow"><pre><code>user['name']</code></pre><button class="copy" data-copy="user['name']">COPY</button></div><p>Read a dictionary value</p></article><article class="card" data-search="tuples, sets & dicts user.get('email') read safely"><div class="cmdrow"><pre><code>user.get('email')</code></pre><button class="copy" data-copy="user.get('email')">COPY</button></div><p>Read safely</p></article><article class="card" data-search="tuples, sets & dicts user.get('email', 'n/a') read with default"><div class="cmdrow"><pre><code>user.get('email', 'n/a')</code></pre><button class="copy" data-copy="user.get('email', 'n/a')">COPY</button></div><p>Read with default</p></article><article class="card" data-search="tuples, sets & dicts user['email'] = '[email protected]' add or update key"><div class="cmdrow"><pre><code>user['email'] = '[email protected]'</code></pre><button class="copy" data-copy="user['email'] = '[email protected]'">COPY</button></div><p>Add or update key</p></article><article class="card" data-search="tuples, sets & dicts user.update({'age': 19}) update multiple keys"><div class="cmdrow"><pre><code>user.update({'age': 19})</code></pre><button class="copy" data-copy="user.update({'age': 19})">COPY</button></div><p>Update multiple keys</p></article><article class="card" data-search="tuples, sets & dicts user.pop('age') remove and return a key"><div class="cmdrow"><pre><code>user.pop('age')</code></pre><button class="copy" data-copy="user.pop('age')">COPY</button></div><p>Remove and return a key</p></article><article class="card" data-search="tuples, sets & dicts user.keys() dictionary keys"><div class="cmdrow"><pre><code>user.keys()</code></pre><button class="copy" data-copy="user.keys()">COPY</button></div><p>Dictionary keys</p></article><article class="card" data-search="tuples, sets & dicts user.values() dictionary values"><div class="cmdrow"><pre><code>user.values()</code></pre><button class="copy" data-copy="user.values()">COPY</button></div><p>Dictionary values</p></article><article class="card" data-search="tuples, sets & dicts user.items() key/value pairs"><div class="cmdrow"><pre><code>user.items()</code></pre><button class="copy" data-copy="user.items()">COPY</button></div><p>Key/value pairs</p></article><article class="card" data-search="tuples, sets & dicts 'name' in user check whether key exists"><div class="cmdrow"><pre><code>'name' in user</code></pre><button class="copy" data-copy="'name' in user">COPY</button></div><p>Check whether key exists</p></article></div></div></section><section class="section" id="conditionals---loops"><button class="sectionhead"><span>Conditionals & Loops</span><small>16 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="conditionals & loops if x > 0: |
| 14 | print('positive') basic if statement"><div class="cmdrow"><pre><code>if x > 0: |
| 15 | print('positive')</code></pre><button class="copy" data-copy="if x > 0: |
| 16 | print('positive')">COPY</button></div><p>Basic if statement</p></article><article class="card" data-search="conditionals & loops if x > 0: |
| 17 | print('positive') |
| 18 | else: |
| 19 | print('other') if / else"><div class="cmdrow"><pre><code>if x > 0: |
| 20 | print('positive') |
| 21 | else: |
| 22 | print('other')</code></pre><button class="copy" data-copy="if x > 0: |
| 23 | print('positive') |
| 24 | else: |
| 25 | print('other')">COPY</button></div><p>if / else</p></article><article class="card" data-search="conditionals & loops if x > 0: |
| 26 | ... |
| 27 | elif x == 0: |
| 28 | ... |
| 29 | else: |
| 30 | ... if / elif / else"><div class="cmdrow"><pre><code>if x > 0: |
| 31 | ... |
| 32 | elif x == 0: |
| 33 | ... |
| 34 | else: |
| 35 | ...</code></pre><button class="copy" data-copy="if x > 0: |
| 36 | ... |
| 37 | elif x == 0: |
| 38 | ... |
| 39 | else: |
| 40 | ...">COPY</button></div><p>if / elif / else</p></article><article class="card" data-search="conditionals & loops status = 'adult' if age >= 18 else 'minor' conditional expression"><div class="cmdrow"><pre><code>status = 'adult' if age >= 18 else 'minor'</code></pre><button class="copy" data-copy="status = 'adult' if age >= 18 else 'minor'">COPY</button></div><p>Conditional expression</p></article><article class="card" data-search="conditionals & loops if value is none: |
| 41 | ... check for none"><div class="cmdrow"><pre><code>if value is None: |
| 42 | ...</code></pre><button class="copy" data-copy="if value is None: |
| 43 | ...">COPY</button></div><p>Check for None</p></article><article class="card" data-search="conditionals & loops if not items: |
| 44 | ... check for empty or falsy value"><div class="cmdrow"><pre><code>if not items: |
| 45 | ...</code></pre><button class="copy" data-copy="if not items: |
| 46 | ...">COPY</button></div><p>Check for empty or falsy value</p></article><article class="card" data-search="conditionals & loops if 1 <= x <= 10: |
| 47 | ... range check"><div class="cmdrow"><pre><code>if 1 <= x <= 10: |
| 48 | ...</code></pre><button class="copy" data-copy="if 1 <= x <= 10: |
| 49 | ...">COPY</button></div><p>Range check</p></article><article class="card" data-search="conditionals & loops for item in items: |
| 50 | print(item) loop over items"><div class="cmdrow"><pre><code>for item in items: |
| 51 | print(item)</code></pre><button class="copy" data-copy="for item in items: |
| 52 | print(item)">COPY</button></div><p>Loop over items</p></article><article class="card" data-search="conditionals & loops for i in range(5): |
| 53 | print(i) loop from 0 to 4"><div class="cmdrow"><pre><code>for i in range(5): |
| 54 | print(i)</code></pre><button class="copy" data-copy="for i in range(5): |
| 55 | print(i)">COPY</button></div><p>Loop from 0 to 4</p></article><article class="card" data-search="conditionals & loops for i in range(2, 10, 2): |
| 56 | print(i) loop with start stop step"><div class="cmdrow"><pre><code>for i in range(2, 10, 2): |
| 57 | print(i)</code></pre><button class="copy" data-copy="for i in range(2, 10, 2): |
| 58 | print(i)">COPY</button></div><p>Loop with start stop step</p></article><article class="card" data-search="conditionals & loops for i, item in enumerate(items): |
| 59 | print(i, item) loop with indexes"><div class="cmdrow"><pre><code>for i, item in enumerate(items): |
| 60 | print(i, item)</code></pre><button class="copy" data-copy="for i, item in enumerate(items): |
| 61 | print(i, item)">COPY</button></div><p>Loop with indexes</p></article><article class="card" data-search="conditionals & loops for a, b in zip(xs, ys): |
| 62 | print(a, b) loop over two iterables"><div class="cmdrow"><pre><code>for a, b in zip(xs, ys): |
| 63 | print(a, b)</code></pre><button class="copy" data-copy="for a, b in zip(xs, ys): |
| 64 | print(a, b)">COPY</button></div><p>Loop over two iterables</p></article><article class="card" data-search="conditionals & loops while condition: |
| 65 | ... while loop"><div class="cmdrow"><pre><code>while condition: |
| 66 | ...</code></pre><button class="copy" data-copy="while condition: |
| 67 | ...">COPY</button></div><p>While loop</p></article><article class="card" data-search="conditionals & loops break exit a loop"><div class="cmdrow"><pre><code>break</code></pre><button class="copy" data-copy="break">COPY</button></div><p>Exit a loop</p></article><article class="card" data-search="conditionals & loops continue skip to next iteration"><div class="cmdrow"><pre><code>continue</code></pre><button class="copy" data-copy="continue">COPY</button></div><p>Skip to next iteration</p></article><article class="card" data-search="conditionals & loops range(10) create a range"><div class="cmdrow"><pre><code>range(10)</code></pre><button class="copy" data-copy="range(10)">COPY</button></div><p>Create a range</p></article></div></div></section><section class="section" id="comprehensions"><button class="sectionhead"><span>Comprehensions</span><small>7 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="comprehensions [x * 2 for x in items] list comprehension"><div class="cmdrow"><pre><code>[x * 2 for x in items]</code></pre><button class="copy" data-copy="[x * 2 for x in items]">COPY</button></div><p>List comprehension</p></article><article class="card" data-search="comprehensions [x for x in items if x > 0] filtered list comprehension"><div class="cmdrow"><pre><code>[x for x in items if x > 0]</code></pre><button class="copy" data-copy="[x for x in items if x > 0]">COPY</button></div><p>Filtered list comprehension</p></article><article class="card" data-search="comprehensions {x * 2 for x in items} set comprehension"><div class="cmdrow"><pre><code>{x * 2 for x in items}</code></pre><button class="copy" data-copy="{x * 2 for x in items}">COPY</button></div><p>Set comprehension</p></article><article class="card" data-search="comprehensions {k: v * 2 for k, v in data.items()} dictionary comprehension"><div class="cmdrow"><pre><code>{k: v * 2 for k, v in data.items()}</code></pre><button class="copy" data-copy="{k: v * 2 for k, v in data.items()}">COPY</button></div><p>Dictionary comprehension</p></article><article class="card" data-search="comprehensions (x * 2 for x in items) generator expression"><div class="cmdrow"><pre><code>(x * 2 for x in items)</code></pre><button class="copy" data-copy="(x * 2 for x in items)">COPY</button></div><p>Generator expression</p></article><article class="card" data-search="comprehensions [word.strip().lower() for word in lines if word.strip()] clean and filter text"><div class="cmdrow"><pre><code>[word.strip().lower() for word in lines if word.strip()]</code></pre><button class="copy" data-copy="[word.strip().lower() for word in lines if word.strip()]">COPY</button></div><p>Clean and filter text</p></article><article class="card" data-search="comprehensions [x for row in matrix for x in row] flatten one list level"><div class="cmdrow"><pre><code>[x for row in matrix for x in row]</code></pre><button class="copy" data-copy="[x for row in matrix for x in row]">COPY</button></div><p>Flatten one list level</p></article></div></div></section><section class="section" id="functions"><button class="sectionhead"><span>Functions</span><small>15 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="functions def greet(name): |
| 68 | return f'hello {name}' define a function"><div class="cmdrow"><pre><code>def greet(name): |
| 69 | return f'Hello {name}'</code></pre><button class="copy" data-copy="def greet(name): |
| 70 | return f'Hello {name}'">COPY</button></div><p>Define a function</p></article><article class="card" data-search="functions def add(a, b=0): |
| 71 | return a + b default argument"><div class="cmdrow"><pre><code>def add(a, b=0): |
| 72 | return a + b</code></pre><button class="copy" data-copy="def add(a, b=0): |
| 73 | return a + b">COPY</button></div><p>Default argument</p></article><article class="card" data-search="functions def func(*args): |
| 74 | print(args) variable positional arguments"><div class="cmdrow"><pre><code>def func(*args): |
| 75 | print(args)</code></pre><button class="copy" data-copy="def func(*args): |
| 76 | print(args)">COPY</button></div><p>Variable positional arguments</p></article><article class="card" data-search="functions def func(**kwargs): |
| 77 | print(kwargs) variable keyword arguments"><div class="cmdrow"><pre><code>def func(**kwargs): |
| 78 | print(kwargs)</code></pre><button class="copy" data-copy="def func(**kwargs): |
| 79 | print(kwargs)">COPY</button></div><p>Variable keyword arguments</p></article><article class="card" data-search="functions def func(a, /, b, *, c): |
| 80 | ... positional-only and keyword-only parameters"><div class="cmdrow"><pre><code>def func(a, /, b, *, c): |
| 81 | ...</code></pre><button class="copy" data-copy="def func(a, /, b, *, c): |
| 82 | ...">COPY</button></div><p>Positional-only and keyword-only parameters</p></article><article class="card" data-search="functions func(a=1, b=2) call with keyword arguments"><div class="cmdrow"><pre><code>func(a=1, b=2)</code></pre><button class="copy" data-copy="func(a=1, b=2)">COPY</button></div><p>Call with keyword arguments</p></article><article class="card" data-search="functions values = [1, 2] |
| 83 | func(*values) unpack positional arguments"><div class="cmdrow"><pre><code>values = [1, 2] |
| 84 | func(*values)</code></pre><button class="copy" data-copy="values = [1, 2] |
| 85 | func(*values)">COPY</button></div><p>Unpack positional arguments</p></article><article class="card" data-search="functions options = {'a': 1} |
| 86 | func(**options) unpack keyword arguments"><div class="cmdrow"><pre><code>options = {'a': 1} |
| 87 | func(**options)</code></pre><button class="copy" data-copy="options = {'a': 1} |
| 88 | func(**options)">COPY</button></div><p>Unpack keyword arguments</p></article><article class="card" data-search="functions lambda x: x * 2 anonymous function"><div class="cmdrow"><pre><code>lambda x: x * 2</code></pre><button class="copy" data-copy="lambda x: x * 2">COPY</button></div><p>Anonymous function</p></article><article class="card" data-search="functions map(str.upper, words) map lazily"><div class="cmdrow"><pre><code>map(str.upper, words)</code></pre><button class="copy" data-copy="map(str.upper, words)">COPY</button></div><p>Map lazily</p></article><article class="card" data-search="functions filter(str.isalpha, values) filter lazily"><div class="cmdrow"><pre><code>filter(str.isalpha, values)</code></pre><button class="copy" data-copy="filter(str.isalpha, values)">COPY</button></div><p>Filter lazily</p></article><article class="card" data-search="functions return value return a value"><div class="cmdrow"><pre><code>return value</code></pre><button class="copy" data-copy="return value">COPY</button></div><p>Return a value</p></article><article class="card" data-search="functions yield value yield from a generator"><div class="cmdrow"><pre><code>yield value</code></pre><button class="copy" data-copy="yield value">COPY</button></div><p>Yield from a generator</p></article><article class="card" data-search="functions global name use a module-level name"><div class="cmdrow"><pre><code>global name</code></pre><button class="copy" data-copy="global name">COPY</button></div><p>Use a module-level name</p></article><article class="card" data-search="functions nonlocal name use an enclosing-scope name"><div class="cmdrow"><pre><code>nonlocal name</code></pre><button class="copy" data-copy="nonlocal name">COPY</button></div><p>Use an enclosing-scope name</p></article></div></div></section><section class="section" id="oop---classes"><button class="sectionhead"><span>Oop & Classes</span><small>14 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="oop & classes class user: |
| 89 | pass define a class"><div class="cmdrow"><pre><code>class User: |
| 90 | pass</code></pre><button class="copy" data-copy="class User: |
| 91 | pass">COPY</button></div><p>Define a class</p></article><article class="card" data-search="oop & classes class user: |
| 92 | def __init__(self, name): |
| 93 | self.name = name define an initializer"><div class="cmdrow"><pre><code>class User: |
| 94 | def __init__(self, name): |
| 95 | self.name = name</code></pre><button class="copy" data-copy="class User: |
| 96 | def __init__(self, name): |
| 97 | self.name = name">COPY</button></div><p>Define an initializer</p></article><article class="card" data-search="oop & classes u = user('ada') create an instance"><div class="cmdrow"><pre><code>u = User('Ada')</code></pre><button class="copy" data-copy="u = User('Ada')">COPY</button></div><p>Create an instance</p></article><article class="card" data-search="oop & classes u.name access an attribute"><div class="cmdrow"><pre><code>u.name</code></pre><button class="copy" data-copy="u.name">COPY</button></div><p>Access an attribute</p></article><article class="card" data-search="oop & classes class user: |
| 98 | def greet(self): |
| 99 | return self.name define an instance method"><div class="cmdrow"><pre><code>class User: |
| 100 | def greet(self): |
| 101 | return self.name</code></pre><button class="copy" data-copy="class User: |
| 102 | def greet(self): |
| 103 | return self.name">COPY</button></div><p>Define an instance method</p></article><article class="card" data-search="oop & classes @classmethod |
| 104 | def from_text(cls, text): |
| 105 | return cls(text) define a class method"><div class="cmdrow"><pre><code>@classmethod |
| 106 | def from_text(cls, text): |
| 107 | return cls(text)</code></pre><button class="copy" data-copy="@classmethod |
| 108 | def from_text(cls, text): |
| 109 | return cls(text)">COPY</button></div><p>Define a class method</p></article><article class="card" data-search="oop & classes @staticmethod |
| 110 | def validate(value): |
| 111 | return bool(value) define a static method"><div class="cmdrow"><pre><code>@staticmethod |
| 112 | def validate(value): |
| 113 | return bool(value)</code></pre><button class="copy" data-copy="@staticmethod |
| 114 | def validate(value): |
| 115 | return bool(value)">COPY</button></div><p>Define a static method</p></article><article class="card" data-search="oop & classes class admin(user): |
| 116 | pass subclass another class"><div class="cmdrow"><pre><code>class Admin(User): |
| 117 | pass</code></pre><button class="copy" data-copy="class Admin(User): |
| 118 | pass">COPY</button></div><p>Subclass another class</p></article><article class="card" data-search="oop & classes super().__init__(name) call parent initializer"><div class="cmdrow"><pre><code>super().__init__(name)</code></pre><button class="copy" data-copy="super().__init__(name)">COPY</button></div><p>Call parent initializer</p></article><article class="card" data-search="oop & classes isinstance(obj, user) check instance type"><div class="cmdrow"><pre><code>isinstance(obj, User)</code></pre><button class="copy" data-copy="isinstance(obj, User)">COPY</button></div><p>Check instance type</p></article><article class="card" data-search="oop & classes issubclass(admin, user) check inheritance"><div class="cmdrow"><pre><code>issubclass(Admin, User)</code></pre><button class="copy" data-copy="issubclass(Admin, User)">COPY</button></div><p>Check inheritance</p></article><article class="card" data-search="oop & classes @property |
| 119 | def full_name(self): |
| 120 | return self.name define a property"><div class="cmdrow"><pre><code>@property |
| 121 | def full_name(self): |
| 122 | return self.name</code></pre><button class="copy" data-copy="@property |
| 123 | def full_name(self): |
| 124 | return self.name">COPY</button></div><p>Define a property</p></article><article class="card" data-search="oop & classes def __repr__(self): |
| 125 | return f'user({self.name!r})' customize repr"><div class="cmdrow"><pre><code>def __repr__(self): |
| 126 | return f'User({self.name!r})'</code></pre><button class="copy" data-copy="def __repr__(self): |
| 127 | return f'User({self.name!r})'">COPY</button></div><p>Customize repr</p></article><article class="card" data-search="oop & classes def __str__(self): |
| 128 | return self.name customize str"><div class="cmdrow"><pre><code>def __str__(self): |
| 129 | return self.name</code></pre><button class="copy" data-copy="def __str__(self): |
| 130 | return self.name">COPY</button></div><p>Customize str</p></article></div></div></section><section class="section" id="exceptions"><button class="sectionhead"><span>Exceptions</span><small>9 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="exceptions try: |
| 131 | risky() |
| 132 | except valueerror: |
| 133 | handle() catch a specific exception"><div class="cmdrow"><pre><code>try: |
| 134 | risky() |
| 135 | except ValueError: |
| 136 | handle()</code></pre><button class="copy" data-copy="try: |
| 137 | risky() |
| 138 | except ValueError: |
| 139 | handle()">COPY</button></div><p>Catch a specific exception</p></article><article class="card" data-search="exceptions try: |
| 140 | ... |
| 141 | except (typeerror, valueerror) as e: |
| 142 | print(e) catch multiple exception types"><div class="cmdrow"><pre><code>try: |
| 143 | ... |
| 144 | except (TypeError, ValueError) as e: |
| 145 | print(e)</code></pre><button class="copy" data-copy="try: |
| 146 | ... |
| 147 | except (TypeError, ValueError) as e: |
| 148 | print(e)">COPY</button></div><p>Catch multiple exception types</p></article><article class="card" data-search="exceptions try: |
| 149 | ... |
| 150 | except exception as e: |
| 151 | print(e) catch most normal exceptions"><div class="cmdrow"><pre><code>try: |
| 152 | ... |
| 153 | except Exception as e: |
| 154 | print(e)</code></pre><button class="copy" data-copy="try: |
| 155 | ... |
| 156 | except Exception as e: |
| 157 | print(e)">COPY</button></div><p>Catch most normal exceptions</p></article><article class="card" data-search="exceptions try: |
| 158 | ... |
| 159 | else: |
| 160 | success() run else when no exception occurs"><div class="cmdrow"><pre><code>try: |
| 161 | ... |
| 162 | else: |
| 163 | success()</code></pre><button class="copy" data-copy="try: |
| 164 | ... |
| 165 | else: |
| 166 | success()">COPY</button></div><p>Run else when no exception occurs</p></article><article class="card" data-search="exceptions try: |
| 167 | ... |
| 168 | finally: |
| 169 | cleanup() always run cleanup"><div class="cmdrow"><pre><code>try: |
| 170 | ... |
| 171 | finally: |
| 172 | cleanup()</code></pre><button class="copy" data-copy="try: |
| 173 | ... |
| 174 | finally: |
| 175 | cleanup()">COPY</button></div><p>Always run cleanup</p></article><article class="card" data-search="exceptions raise valueerror('bad value') raise an exception"><div class="cmdrow"><pre><code>raise ValueError('bad value')</code></pre><button class="copy" data-copy="raise ValueError('bad value')">COPY</button></div><p>Raise an exception</p></article><article class="card" data-search="exceptions raise re-raise current exception"><div class="cmdrow"><pre><code>raise</code></pre><button class="copy" data-copy="raise">COPY</button></div><p>Re-raise current exception</p></article><article class="card" data-search="exceptions assert x > 0 development-time assertion"><div class="cmdrow"><pre><code>assert x > 0</code></pre><button class="copy" data-copy="assert x > 0">COPY</button></div><p>Development-time assertion</p></article><article class="card" data-search="exceptions class myerror(exception): |
| 176 | pass create a custom exception"><div class="cmdrow"><pre><code>class MyError(Exception): |
| 177 | pass</code></pre><button class="copy" data-copy="class MyError(Exception): |
| 178 | pass">COPY</button></div><p>Create a custom exception</p></article></div></div></section><section class="section" id="files---pathlib"><button class="sectionhead"><span>Files & Pathlib</span><small>22 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="files & pathlib from pathlib import path import path"><div class="cmdrow"><pre><code>from pathlib import Path</code></pre><button class="copy" data-copy="from pathlib import Path">COPY</button></div><p>Import Path</p></article><article class="card" data-search="files & pathlib p = path('file.txt') create a path object"><div class="cmdrow"><pre><code>p = Path('file.txt')</code></pre><button class="copy" data-copy="p = Path('file.txt')">COPY</button></div><p>Create a Path object</p></article><article class="card" data-search="files & pathlib p.exists() check whether path exists"><div class="cmdrow"><pre><code>p.exists()</code></pre><button class="copy" data-copy="p.exists()">COPY</button></div><p>Check whether path exists</p></article><article class="card" data-search="files & pathlib p.is_file() check whether path is a file"><div class="cmdrow"><pre><code>p.is_file()</code></pre><button class="copy" data-copy="p.is_file()">COPY</button></div><p>Check whether path is a file</p></article><article class="card" data-search="files & pathlib p.is_dir() check whether path is a directory"><div class="cmdrow"><pre><code>p.is_dir()</code></pre><button class="copy" data-copy="p.is_dir()">COPY</button></div><p>Check whether path is a directory</p></article><article class="card" data-search="files & pathlib p.name get file name"><div class="cmdrow"><pre><code>p.name</code></pre><button class="copy" data-copy="p.name">COPY</button></div><p>Get file name</p></article><article class="card" data-search="files & pathlib p.stem get filename without suffix"><div class="cmdrow"><pre><code>p.stem</code></pre><button class="copy" data-copy="p.stem">COPY</button></div><p>Get filename without suffix</p></article><article class="card" data-search="files & pathlib p.suffix get extension"><div class="cmdrow"><pre><code>p.suffix</code></pre><button class="copy" data-copy="p.suffix">COPY</button></div><p>Get extension</p></article><article class="card" data-search="files & pathlib p.parent get parent directory"><div class="cmdrow"><pre><code>p.parent</code></pre><button class="copy" data-copy="p.parent">COPY</button></div><p>Get parent directory</p></article><article class="card" data-search="files & pathlib p.resolve() resolve absolute path"><div class="cmdrow"><pre><code>p.resolve()</code></pre><button class="copy" data-copy="p.resolve()">COPY</button></div><p>Resolve absolute path</p></article><article class="card" data-search="files & pathlib p.read_text() read text"><div class="cmdrow"><pre><code>p.read_text()</code></pre><button class="copy" data-copy="p.read_text()">COPY</button></div><p>Read text</p></article><article class="card" data-search="files & pathlib p.write_text('hello') write text"><div class="cmdrow"><pre><code>p.write_text('hello')</code></pre><button class="copy" data-copy="p.write_text('hello')">COPY</button></div><p>Write text</p></article><article class="card" data-search="files & pathlib p.read_bytes() read bytes"><div class="cmdrow"><pre><code>p.read_bytes()</code></pre><button class="copy" data-copy="p.read_bytes()">COPY</button></div><p>Read bytes</p></article><article class="card" data-search="files & pathlib p.write_bytes(data) write bytes"><div class="cmdrow"><pre><code>p.write_bytes(data)</code></pre><button class="copy" data-copy="p.write_bytes(data)">COPY</button></div><p>Write bytes</p></article><article class="card" data-search="files & pathlib path('newdir').mkdir(exist_ok=true) create directory"><div class="cmdrow"><pre><code>Path('newdir').mkdir(exist_ok=True)</code></pre><button class="copy" data-copy="Path('newdir').mkdir(exist_ok=True)">COPY</button></div><p>Create directory</p></article><article class="card" data-search="files & pathlib path('a/b').mkdir(parents=true, exist_ok=true) create nested directories"><div class="cmdrow"><pre><code>Path('a/b').mkdir(parents=True, exist_ok=True)</code></pre><button class="copy" data-copy="Path('a/b').mkdir(parents=True, exist_ok=True)">COPY</button></div><p>Create nested directories</p></article><article class="card" data-search="files & pathlib list(path('.').iterdir()) list directory contents"><div class="cmdrow"><pre><code>list(Path('.').iterdir())</code></pre><button class="copy" data-copy="list(Path('.').iterdir())">COPY</button></div><p>List directory contents</p></article><article class="card" data-search="files & pathlib list(path('.').glob('*.py')) glob files"><div class="cmdrow"><pre><code>list(Path('.').glob('*.py'))</code></pre><button class="copy" data-copy="list(Path('.').glob('*.py'))">COPY</button></div><p>Glob files</p></article><article class="card" data-search="files & pathlib list(path('.').rglob('*.py')) recursive glob"><div class="cmdrow"><pre><code>list(Path('.').rglob('*.py'))</code></pre><button class="copy" data-copy="list(Path('.').rglob('*.py'))">COPY</button></div><p>Recursive glob</p></article><article class="card" data-search="files & pathlib with open('file.txt', 'r', encoding='utf-8') as f: |
| 179 | text = f.read() read text with open"><div class="cmdrow"><pre><code>with open('file.txt', 'r', encoding='utf-8') as f: |
| 180 | text = f.read()</code></pre><button class="copy" data-copy="with open('file.txt', 'r', encoding='utf-8') as f: |
| 181 | text = f.read()">COPY</button></div><p>Read text with open</p></article><article class="card" data-search="files & pathlib with open('file.txt', 'w', encoding='utf-8') as f: |
| 182 | f.write('hello') write text with open"><div class="cmdrow"><pre><code>with open('file.txt', 'w', encoding='utf-8') as f: |
| 183 | f.write('hello')</code></pre><button class="copy" data-copy="with open('file.txt', 'w', encoding='utf-8') as f: |
| 184 | f.write('hello')">COPY</button></div><p>Write text with open</p></article><article class="card" data-search="files & pathlib with open('file.txt', 'a', encoding='utf-8') as f: |
| 185 | f.write('more') append text"><div class="cmdrow"><pre><code>with open('file.txt', 'a', encoding='utf-8') as f: |
| 186 | f.write('more')</code></pre><button class="copy" data-copy="with open('file.txt', 'a', encoding='utf-8') as f: |
| 187 | f.write('more')">COPY</button></div><p>Append text</p></article></div></div></section><section class="section" id="json---csv"><button class="sectionhead"><span>Json & Csv</span><small>11 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="json & csv import json import json tools"><div class="cmdrow"><pre><code>import json</code></pre><button class="copy" data-copy="import json">COPY</button></div><p>Import JSON tools</p></article><article class="card" data-search="json & csv json.dumps(data) serialize to json string"><div class="cmdrow"><pre><code>json.dumps(data)</code></pre><button class="copy" data-copy="json.dumps(data)">COPY</button></div><p>Serialize to JSON string</p></article><article class="card" data-search="json & csv json.dumps(data, indent=2) pretty json"><div class="cmdrow"><pre><code>json.dumps(data, indent=2)</code></pre><button class="copy" data-copy="json.dumps(data, indent=2)">COPY</button></div><p>Pretty JSON</p></article><article class="card" data-search="json & csv json.loads(text) parse json string"><div class="cmdrow"><pre><code>json.loads(text)</code></pre><button class="copy" data-copy="json.loads(text)">COPY</button></div><p>Parse JSON string</p></article><article class="card" data-search="json & csv json.dump(data, file_obj) write json to file"><div class="cmdrow"><pre><code>json.dump(data, file_obj)</code></pre><button class="copy" data-copy="json.dump(data, file_obj)">COPY</button></div><p>Write JSON to file</p></article><article class="card" data-search="json & csv json.load(file_obj) read json from file"><div class="cmdrow"><pre><code>json.load(file_obj)</code></pre><button class="copy" data-copy="json.load(file_obj)">COPY</button></div><p>Read JSON from file</p></article><article class="card" data-search="json & csv import csv import csv tools"><div class="cmdrow"><pre><code>import csv</code></pre><button class="copy" data-copy="import csv">COPY</button></div><p>Import CSV tools</p></article><article class="card" data-search="json & csv csv.reader(file_obj) read csv rows"><div class="cmdrow"><pre><code>csv.reader(file_obj)</code></pre><button class="copy" data-copy="csv.reader(file_obj)">COPY</button></div><p>Read CSV rows</p></article><article class="card" data-search="json & csv csv.writer(file_obj) write csv rows"><div class="cmdrow"><pre><code>csv.writer(file_obj)</code></pre><button class="copy" data-copy="csv.writer(file_obj)">COPY</button></div><p>Write CSV rows</p></article><article class="card" data-search="json & csv csv.dictreader(file_obj) read csv as dictionaries"><div class="cmdrow"><pre><code>csv.DictReader(file_obj)</code></pre><button class="copy" data-copy="csv.DictReader(file_obj)">COPY</button></div><p>Read CSV as dictionaries</p></article><article class="card" data-search="json & csv csv.dictwriter(file_obj, fieldnames=fields) write dictionary rows"><div class="cmdrow"><pre><code>csv.DictWriter(file_obj, fieldnames=fields)</code></pre><button class="copy" data-copy="csv.DictWriter(file_obj, fieldnames=fields)">COPY</button></div><p>Write dictionary rows</p></article></div></div></section><section class="section" id="datetime---time"><button class="sectionhead"><span>Datetime & Time</span><small>12 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="datetime & time from datetime import datetime, date, timedelta import date/time classes"><div class="cmdrow"><pre><code>from datetime import datetime, date, timedelta</code></pre><button class="copy" data-copy="from datetime import datetime, date, timedelta">COPY</button></div><p>Import date/time classes</p></article><article class="card" data-search="datetime & time datetime.now() current local date and time"><div class="cmdrow"><pre><code>datetime.now()</code></pre><button class="copy" data-copy="datetime.now()">COPY</button></div><p>Current local date and time</p></article><article class="card" data-search="datetime & time date.today() today's date"><div class="cmdrow"><pre><code>date.today()</code></pre><button class="copy" data-copy="date.today()">COPY</button></div><p>Today's date</p></article><article class="card" data-search="datetime & time datetime.now().isoformat() iso 8601 string"><div class="cmdrow"><pre><code>datetime.now().isoformat()</code></pre><button class="copy" data-copy="datetime.now().isoformat()">COPY</button></div><p>ISO 8601 string</p></article><article class="card" data-search="datetime & time datetime.fromisoformat('2026-09-18t15:30:00') parse iso datetime"><div class="cmdrow"><pre><code>datetime.fromisoformat('2026-09-18T15:30:00')</code></pre><button class="copy" data-copy="datetime.fromisoformat('2026-09-18T15:30:00')">COPY</button></div><p>Parse ISO datetime</p></article><article class="card" data-search="datetime & time datetime.strptime('09/18/2026', '%m/%d/%y') parse formatted date"><div class="cmdrow"><pre><code>datetime.strptime('09/18/2026', '%m/%d/%Y')</code></pre><button class="copy" data-copy="datetime.strptime('09/18/2026', '%m/%d/%Y')">COPY</button></div><p>Parse formatted date</p></article><article class="card" data-search="datetime & time datetime.now().strftime('%y-%m-%d') format date/time"><div class="cmdrow"><pre><code>datetime.now().strftime('%Y-%m-%d')</code></pre><button class="copy" data-copy="datetime.now().strftime('%Y-%m-%d')">COPY</button></div><p>Format date/time</p></article><article class="card" data-search="datetime & time datetime.now() + timedelta(days=7) add seven days"><div class="cmdrow"><pre><code>datetime.now() + timedelta(days=7)</code></pre><button class="copy" data-copy="datetime.now() + timedelta(days=7)">COPY</button></div><p>Add seven days</p></article><article class="card" data-search="datetime & time (end - start).total_seconds() elapsed seconds"><div class="cmdrow"><pre><code>(end - start).total_seconds()</code></pre><button class="copy" data-copy="(end - start).total_seconds()">COPY</button></div><p>Elapsed seconds</p></article><article class="card" data-search="datetime & time import time |
| 188 | time.sleep(1) sleep one second"><div class="cmdrow"><pre><code>import time |
| 189 | time.sleep(1)</code></pre><button class="copy" data-copy="import time |
| 190 | time.sleep(1)">COPY</button></div><p>Sleep one second</p></article><article class="card" data-search="datetime & time time.time() unix timestamp"><div class="cmdrow"><pre><code>time.time()</code></pre><button class="copy" data-copy="time.time()">COPY</button></div><p>Unix timestamp</p></article><article class="card" data-search="datetime & time time.perf_counter() high-resolution timer"><div class="cmdrow"><pre><code>time.perf_counter()</code></pre><button class="copy" data-copy="time.perf_counter()">COPY</button></div><p>High-resolution timer</p></article></div></div></section><section class="section" id="regex"><button class="sectionhead"><span>Regex</span><small>10 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="regex import re import regular expressions"><div class="cmdrow"><pre><code>import re</code></pre><button class="copy" data-copy="import re">COPY</button></div><p>Import regular expressions</p></article><article class="card" data-search="regex re.search(r'\\d+', text) find first digit sequence"><div class="cmdrow"><pre><code>re.search(r'\\d+', text)</code></pre><button class="copy" data-copy="re.search(r'\\d+', text)">COPY</button></div><p>Find first digit sequence</p></article><article class="card" data-search="regex re.match(r'\\w+', text) match from string start"><div class="cmdrow"><pre><code>re.match(r'\\w+', text)</code></pre><button class="copy" data-copy="re.match(r'\\w+', text)">COPY</button></div><p>Match from string start</p></article><article class="card" data-search="regex re.fullmatch(r'\\d{4}', text) require a full match"><div class="cmdrow"><pre><code>re.fullmatch(r'\\d{4}', text)</code></pre><button class="copy" data-copy="re.fullmatch(r'\\d{4}', text)">COPY</button></div><p>Require a full match</p></article><article class="card" data-search="regex re.findall(r'\\b\\w+\\b', text) return all matches"><div class="cmdrow"><pre><code>re.findall(r'\\b\\w+\\b', text)</code></pre><button class="copy" data-copy="re.findall(r'\\b\\w+\\b', text)">COPY</button></div><p>Return all matches</p></article><article class="card" data-search="regex re.sub(r'\\s+', ' ', text) replace repeated whitespace"><div class="cmdrow"><pre><code>re.sub(r'\\s+', ' ', text)</code></pre><button class="copy" data-copy="re.sub(r'\\s+', ' ', text)">COPY</button></div><p>Replace repeated whitespace</p></article><article class="card" data-search="regex re.split(r'[,;]', text) split using regex"><div class="cmdrow"><pre><code>re.split(r'[,;]', text)</code></pre><button class="copy" data-copy="re.split(r'[,;]', text)">COPY</button></div><p>Split using regex</p></article><article class="card" data-search="regex pattern = re.compile(r'\\d+') compile a reusable pattern"><div class="cmdrow"><pre><code>pattern = re.compile(r'\\d+')</code></pre><button class="copy" data-copy="pattern = re.compile(r'\\d+')">COPY</button></div><p>Compile a reusable pattern</p></article><article class="card" data-search="regex m.group(0) read full match"><div class="cmdrow"><pre><code>m.group(0)</code></pre><button class="copy" data-copy="m.group(0)">COPY</button></div><p>Read full match</p></article><article class="card" data-search="regex m.groups() read captured groups"><div class="cmdrow"><pre><code>m.groups()</code></pre><button class="copy" data-copy="m.groups()">COPY</button></div><p>Read captured groups</p></article></div></div></section><section class="section" id="math---random"><button class="sectionhead"><span>Math & Random</span><small>15 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="math & random import math import math module"><div class="cmdrow"><pre><code>import math</code></pre><button class="copy" data-copy="import math">COPY</button></div><p>Import math module</p></article><article class="card" data-search="math & random math.sqrt(81) square root"><div class="cmdrow"><pre><code>math.sqrt(81)</code></pre><button class="copy" data-copy="math.sqrt(81)">COPY</button></div><p>Square root</p></article><article class="card" data-search="math & random math.ceil(3.2) round upward"><div class="cmdrow"><pre><code>math.ceil(3.2)</code></pre><button class="copy" data-copy="math.ceil(3.2)">COPY</button></div><p>Round upward</p></article><article class="card" data-search="math & random math.floor(3.8) round downward"><div class="cmdrow"><pre><code>math.floor(3.8)</code></pre><button class="copy" data-copy="math.floor(3.8)">COPY</button></div><p>Round downward</p></article><article class="card" data-search="math & random math.pi pi constant"><div class="cmdrow"><pre><code>math.pi</code></pre><button class="copy" data-copy="math.pi">COPY</button></div><p>Pi constant</p></article><article class="card" data-search="math & random math.isclose(a, b) compare floats approximately"><div class="cmdrow"><pre><code>math.isclose(a, b)</code></pre><button class="copy" data-copy="math.isclose(a, b)">COPY</button></div><p>Compare floats approximately</p></article><article class="card" data-search="math & random import statistics import statistics module"><div class="cmdrow"><pre><code>import statistics</code></pre><button class="copy" data-copy="import statistics">COPY</button></div><p>Import statistics module</p></article><article class="card" data-search="math & random statistics.mean(values) mean"><div class="cmdrow"><pre><code>statistics.mean(values)</code></pre><button class="copy" data-copy="statistics.mean(values)">COPY</button></div><p>Mean</p></article><article class="card" data-search="math & random statistics.median(values) median"><div class="cmdrow"><pre><code>statistics.median(values)</code></pre><button class="copy" data-copy="statistics.median(values)">COPY</button></div><p>Median</p></article><article class="card" data-search="math & random statistics.stdev(values) sample standard deviation"><div class="cmdrow"><pre><code>statistics.stdev(values)</code></pre><button class="copy" data-copy="statistics.stdev(values)">COPY</button></div><p>Sample standard deviation</p></article><article class="card" data-search="math & random import random import pseudo-random tools"><div class="cmdrow"><pre><code>import random</code></pre><button class="copy" data-copy="import random">COPY</button></div><p>Import pseudo-random tools</p></article><article class="card" data-search="math & random random.randint(1, 10) random integer"><div class="cmdrow"><pre><code>random.randint(1, 10)</code></pre><button class="copy" data-copy="random.randint(1, 10)">COPY</button></div><p>Random integer</p></article><article class="card" data-search="math & random random.choice(items) choose one random item"><div class="cmdrow"><pre><code>random.choice(items)</code></pre><button class="copy" data-copy="random.choice(items)">COPY</button></div><p>Choose one random item</p></article><article class="card" data-search="math & random random.sample(items, 3) choose unique random items"><div class="cmdrow"><pre><code>random.sample(items, 3)</code></pre><button class="copy" data-copy="random.sample(items, 3)">COPY</button></div><p>Choose unique random items</p></article><article class="card" data-search="math & random random.shuffle(items) shuffle a list in place"><div class="cmdrow"><pre><code>random.shuffle(items)</code></pre><button class="copy" data-copy="random.shuffle(items)">COPY</button></div><p>Shuffle a list in place</p></article></div></div></section><section class="section" id="iterators---generators"><button class="sectionhead"><span>Iterators & Generators</span><small>9 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="iterators & generators iter(items) get an iterator"><div class="cmdrow"><pre><code>iter(items)</code></pre><button class="copy" data-copy="iter(items)">COPY</button></div><p>Get an iterator</p></article><article class="card" data-search="iterators & generators next(iterator) get next item"><div class="cmdrow"><pre><code>next(iterator)</code></pre><button class="copy" data-copy="next(iterator)">COPY</button></div><p>Get next item</p></article><article class="card" data-search="iterators & generators next(iterator, default) get next or default"><div class="cmdrow"><pre><code>next(iterator, default)</code></pre><button class="copy" data-copy="next(iterator, default)">COPY</button></div><p>Get next or default</p></article><article class="card" data-search="iterators & generators def countdown(n): |
| 191 | while n: |
| 192 | yield n |
| 193 | n -= 1 create generator function"><div class="cmdrow"><pre><code>def countdown(n): |
| 194 | while n: |
| 195 | yield n |
| 196 | n -= 1</code></pre><button class="copy" data-copy="def countdown(n): |
| 197 | while n: |
| 198 | yield n |
| 199 | n -= 1">COPY</button></div><p>Create generator function</p></article><article class="card" data-search="iterators & generators (x * x for x in range(10)) generator expression"><div class="cmdrow"><pre><code>(x * x for x in range(10))</code></pre><button class="copy" data-copy="(x * x for x in range(10))">COPY</button></div><p>Generator expression</p></article><article class="card" data-search="iterators & generators yield from iterable yield from another iterable"><div class="cmdrow"><pre><code>yield from iterable</code></pre><button class="copy" data-copy="yield from iterable">COPY</button></div><p>Yield from another iterable</p></article><article class="card" data-search="iterators & generators enumerate(items, start=1) enumerate starting at 1"><div class="cmdrow"><pre><code>enumerate(items, start=1)</code></pre><button class="copy" data-copy="enumerate(items, start=1)">COPY</button></div><p>Enumerate starting at 1</p></article><article class="card" data-search="iterators & generators zip(a, b) pair iterables"><div class="cmdrow"><pre><code>zip(a, b)</code></pre><button class="copy" data-copy="zip(a, b)">COPY</button></div><p>Pair iterables</p></article><article class="card" data-search="iterators & generators reversed(items) reverse iterator"><div class="cmdrow"><pre><code>reversed(items)</code></pre><button class="copy" data-copy="reversed(items)">COPY</button></div><p>Reverse iterator</p></article></div></div></section><section class="section" id="modules--venv---pip"><button class="sectionhead"><span>Modules, Venv & Pip</span><small>17 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="modules, venv & pip import os import a module"><div class="cmdrow"><pre><code>import os</code></pre><button class="copy" data-copy="import os">COPY</button></div><p>Import a module</p></article><article class="card" data-search="modules, venv & pip import math as m import with alias"><div class="cmdrow"><pre><code>import math as m</code></pre><button class="copy" data-copy="import math as m">COPY</button></div><p>Import with alias</p></article><article class="card" data-search="modules, venv & pip from pathlib import path import an object"><div class="cmdrow"><pre><code>from pathlib import Path</code></pre><button class="copy" data-copy="from pathlib import Path">COPY</button></div><p>Import an object</p></article><article class="card" data-search="modules, venv & pip if __name__ == '__main__': |
| 200 | main() run only when executed directly"><div class="cmdrow"><pre><code>if __name__ == '__main__': |
| 201 | main()</code></pre><button class="copy" data-copy="if __name__ == '__main__': |
| 202 | main()">COPY</button></div><p>Run only when executed directly</p></article><article class="card" data-search="modules, venv & pip __name__ current module name"><div class="cmdrow"><pre><code>__name__</code></pre><button class="copy" data-copy="__name__">COPY</button></div><p>Current module name</p></article><article class="card" data-search="modules, venv & pip __file__ current module file path"><div class="cmdrow"><pre><code>__file__</code></pre><button class="copy" data-copy="__file__">COPY</button></div><p>Current module file path</p></article><article class="card" data-search="modules, venv & pip python -m venv .venv create a virtual environment"><div class="cmdrow"><pre><code>python -m venv .venv</code></pre><button class="copy" data-copy="python -m venv .venv">COPY</button></div><p>Create a virtual environment</p></article><article class="card" data-search="modules, venv & pip source .venv/bin/activate activate venv on linux/macos"><div class="cmdrow"><pre><code>source .venv/bin/activate</code></pre><button class="copy" data-copy="source .venv/bin/activate">COPY</button></div><p>Activate venv on Linux/macOS</p></article><article class="card" data-search="modules, venv & pip .venv\\scripts\\activate activate venv in windows command prompt"><div class="cmdrow"><pre><code>.venv\\Scripts\\activate</code></pre><button class="copy" data-copy=".venv\\Scripts\\activate">COPY</button></div><p>Activate venv in Windows Command Prompt</p></article><article class="card" data-search="modules, venv & pip python -m pip install package install package"><div class="cmdrow"><pre><code>python -m pip install package</code></pre><button class="copy" data-copy="python -m pip install package">COPY</button></div><p>Install package</p></article><article class="card" data-search="modules, venv & pip python -m pip install -u package upgrade package"><div class="cmdrow"><pre><code>python -m pip install -U package</code></pre><button class="copy" data-copy="python -m pip install -U package">COPY</button></div><p>Upgrade package</p></article><article class="card" data-search="modules, venv & pip python -m pip uninstall package uninstall package"><div class="cmdrow"><pre><code>python -m pip uninstall package</code></pre><button class="copy" data-copy="python -m pip uninstall package">COPY</button></div><p>Uninstall package</p></article><article class="card" data-search="modules, venv & pip python -m pip list list installed packages"><div class="cmdrow"><pre><code>python -m pip list</code></pre><button class="copy" data-copy="python -m pip list">COPY</button></div><p>List installed packages</p></article><article class="card" data-search="modules, venv & pip python -m pip freeze print installed versions"><div class="cmdrow"><pre><code>python -m pip freeze</code></pre><button class="copy" data-copy="python -m pip freeze">COPY</button></div><p>Print installed versions</p></article><article class="card" data-search="modules, venv & pip python -m pip freeze > requirements.txt save requirements"><div class="cmdrow"><pre><code>python -m pip freeze > requirements.txt</code></pre><button class="copy" data-copy="python -m pip freeze > requirements.txt">COPY</button></div><p>Save requirements</p></article><article class="card" data-search="modules, venv & pip python -m pip install -r requirements.txt install requirements"><div class="cmdrow"><pre><code>python -m pip install -r requirements.txt</code></pre><button class="copy" data-copy="python -m pip install -r requirements.txt">COPY</button></div><p>Install requirements</p></article><article class="card" data-search="modules, venv & pip python -m pip show package show package metadata"><div class="cmdrow"><pre><code>python -m pip show package</code></pre><button class="copy" data-copy="python -m pip show package">COPY</button></div><p>Show package metadata</p></article></div></div></section><section class="section" id="typing---dataclasses"><button class="sectionhead"><span>Typing & Dataclasses</span><small>11 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="typing & dataclasses def add(a: int, b: int) -> int: |
| 203 | return a + b function type hints"><div class="cmdrow"><pre><code>def add(a: int, b: int) -> int: |
| 204 | return a + b</code></pre><button class="copy" data-copy="def add(a: int, b: int) -> int: |
| 205 | return a + b">COPY</button></div><p>Function type hints</p></article><article class="card" data-search="typing & dataclasses name: str = 'ada' variable annotation"><div class="cmdrow"><pre><code>name: str = 'Ada'</code></pre><button class="copy" data-copy="name: str = 'Ada'">COPY</button></div><p>Variable annotation</p></article><article class="card" data-search="typing & dataclasses items: list[str] = [] list type hint"><div class="cmdrow"><pre><code>items: list[str] = []</code></pre><button class="copy" data-copy="items: list[str] = []">COPY</button></div><p>List type hint</p></article><article class="card" data-search="typing & dataclasses mapping: dict[str, int] = {} dictionary type hint"><div class="cmdrow"><pre><code>mapping: dict[str, int] = {}</code></pre><button class="copy" data-copy="mapping: dict[str, int] = {}">COPY</button></div><p>Dictionary type hint</p></article><article class="card" data-search="typing & dataclasses value: int none = none|optional value"><div class="cmdrow"><pre><code>value: int </code></pre><button class="copy" data-copy="value: int ">COPY</button></div><p> None = None|Optional value</p></article><article class="card" data-search="typing & dataclasses from typing import any import any"><div class="cmdrow"><pre><code>from typing import Any</code></pre><button class="copy" data-copy="from typing import Any">COPY</button></div><p>Import Any</p></article><article class="card" data-search="typing & dataclasses def func(value: any) -> none: |
| 206 | ... accept any type"><div class="cmdrow"><pre><code>def func(value: Any) -> None: |
| 207 | ...</code></pre><button class="copy" data-copy="def func(value: Any) -> None: |
| 208 | ...">COPY</button></div><p>Accept any type</p></article><article class="card" data-search="typing & dataclasses from dataclasses import dataclass import dataclass"><div class="cmdrow"><pre><code>from dataclasses import dataclass</code></pre><button class="copy" data-copy="from dataclasses import dataclass">COPY</button></div><p>Import dataclass</p></article><article class="card" data-search="typing & dataclasses @dataclass |
| 209 | class user: |
| 210 | name: str |
| 211 | age: int = 0 define a dataclass"><div class="cmdrow"><pre><code>@dataclass |
| 212 | class User: |
| 213 | name: str |
| 214 | age: int = 0</code></pre><button class="copy" data-copy="@dataclass |
| 215 | class User: |
| 216 | name: str |
| 217 | age: int = 0">COPY</button></div><p>Define a dataclass</p></article><article class="card" data-search="typing & dataclasses from typing import typeddict import typeddict"><div class="cmdrow"><pre><code>from typing import TypedDict</code></pre><button class="copy" data-copy="from typing import TypedDict">COPY</button></div><p>Import TypedDict</p></article><article class="card" data-search="typing & dataclasses class userdata(typeddict): |
| 218 | name: str |
| 219 | age: int type a dictionary shape"><div class="cmdrow"><pre><code>class UserData(TypedDict): |
| 220 | name: str |
| 221 | age: int</code></pre><button class="copy" data-copy="class UserData(TypedDict): |
| 222 | name: str |
| 223 | age: int">COPY</button></div><p>Type a dictionary shape</p></article></div></div></section><section class="section" id="os--sys---subprocess"><button class="sectionhead"><span>Os, Sys & Subprocess</span><small>18 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="os, sys & subprocess import os import os helpers"><div class="cmdrow"><pre><code>import os</code></pre><button class="copy" data-copy="import os">COPY</button></div><p>Import OS helpers</p></article><article class="card" data-search="os, sys & subprocess os.getcwd() get working directory"><div class="cmdrow"><pre><code>os.getcwd()</code></pre><button class="copy" data-copy="os.getcwd()">COPY</button></div><p>Get working directory</p></article><article class="card" data-search="os, sys & subprocess os.chdir('/tmp') change working directory"><div class="cmdrow"><pre><code>os.chdir('/tmp')</code></pre><button class="copy" data-copy="os.chdir('/tmp')">COPY</button></div><p>Change working directory</p></article><article class="card" data-search="os, sys & subprocess os.environ.get('home') read environment variable"><div class="cmdrow"><pre><code>os.environ.get('HOME')</code></pre><button class="copy" data-copy="os.environ.get('HOME')">COPY</button></div><p>Read environment variable</p></article><article class="card" data-search="os, sys & subprocess os.environ['mode'] = 'dev' set process environment variable"><div class="cmdrow"><pre><code>os.environ['MODE'] = 'dev'</code></pre><button class="copy" data-copy="os.environ['MODE'] = 'dev'">COPY</button></div><p>Set process environment variable</p></article><article class="card" data-search="os, sys & subprocess os.listdir('.') list directory contents"><div class="cmdrow"><pre><code>os.listdir('.')</code></pre><button class="copy" data-copy="os.listdir('.')">COPY</button></div><p>List directory contents</p></article><article class="card" data-search="os, sys & subprocess os.stat('file.txt') get file metadata"><div class="cmdrow"><pre><code>os.stat('file.txt')</code></pre><button class="copy" data-copy="os.stat('file.txt')">COPY</button></div><p>Get file metadata</p></article><article class="card" data-search="os, sys & subprocess import sys import interpreter helpers"><div class="cmdrow"><pre><code>import sys</code></pre><button class="copy" data-copy="import sys">COPY</button></div><p>Import interpreter helpers</p></article><article class="card" data-search="os, sys & subprocess sys.argv command-line arguments"><div class="cmdrow"><pre><code>sys.argv</code></pre><button class="copy" data-copy="sys.argv">COPY</button></div><p>Command-line arguments</p></article><article class="card" data-search="os, sys & subprocess sys.version python version string"><div class="cmdrow"><pre><code>sys.version</code></pre><button class="copy" data-copy="sys.version">COPY</button></div><p>Python version string</p></article><article class="card" data-search="os, sys & subprocess sys.platform platform identifier"><div class="cmdrow"><pre><code>sys.platform</code></pre><button class="copy" data-copy="sys.platform">COPY</button></div><p>Platform identifier</p></article><article class="card" data-search="os, sys & subprocess sys.exit(0) exit program"><div class="cmdrow"><pre><code>sys.exit(0)</code></pre><button class="copy" data-copy="sys.exit(0)">COPY</button></div><p>Exit program</p></article><article class="card" data-search="os, sys & subprocess import subprocess import subprocess module"><div class="cmdrow"><pre><code>import subprocess</code></pre><button class="copy" data-copy="import subprocess">COPY</button></div><p>Import subprocess module</p></article><article class="card" data-search="os, sys & subprocess subprocess.run(['ls', '-lah']) run an external command"><div class="cmdrow"><pre><code>subprocess.run(['ls', '-lah'])</code></pre><button class="copy" data-copy="subprocess.run(['ls', '-lah'])">COPY</button></div><p>Run an external command</p></article><article class="card" data-search="os, sys & subprocess subprocess.run(['cmd'], check=true) raise if command fails"><div class="cmdrow"><pre><code>subprocess.run(['cmd'], check=True)</code></pre><button class="copy" data-copy="subprocess.run(['cmd'], check=True)">COPY</button></div><p>Raise if command fails</p></article><article class="card" data-search="os, sys & subprocess subprocess.run(['cmd'], capture_output=true, text=true) capture command output"><div class="cmdrow"><pre><code>subprocess.run(['cmd'], capture_output=True, text=True)</code></pre><button class="copy" data-copy="subprocess.run(['cmd'], capture_output=True, text=True)">COPY</button></div><p>Capture command output</p></article><article class="card" data-search="os, sys & subprocess result.stdout captured stdout"><div class="cmdrow"><pre><code>result.stdout</code></pre><button class="copy" data-copy="result.stdout">COPY</button></div><p>Captured stdout</p></article><article class="card" data-search="os, sys & subprocess result.returncode exit status"><div class="cmdrow"><pre><code>result.returncode</code></pre><button class="copy" data-copy="result.returncode">COPY</button></div><p>Exit status</p></article></div></div></section><section class="section" id="collections---functools"><button class="sectionhead"><span>Collections & Functools</span><small>13 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="collections & functools from collections import counter import counter"><div class="cmdrow"><pre><code>from collections import Counter</code></pre><button class="copy" data-copy="from collections import Counter">COPY</button></div><p>Import Counter</p></article><article class="card" data-search="collections & functools counter(words) count values"><div class="cmdrow"><pre><code>Counter(words)</code></pre><button class="copy" data-copy="Counter(words)">COPY</button></div><p>Count values</p></article><article class="card" data-search="collections & functools counter(words).most_common(5) most common values"><div class="cmdrow"><pre><code>Counter(words).most_common(5)</code></pre><button class="copy" data-copy="Counter(words).most_common(5)">COPY</button></div><p>Most common values</p></article><article class="card" data-search="collections & functools from collections import defaultdict import defaultdict"><div class="cmdrow"><pre><code>from collections import defaultdict</code></pre><button class="copy" data-copy="from collections import defaultdict">COPY</button></div><p>Import defaultdict</p></article><article class="card" data-search="collections & functools defaultdict(list) dictionary with automatic list defaults"><div class="cmdrow"><pre><code>defaultdict(list)</code></pre><button class="copy" data-copy="defaultdict(list)">COPY</button></div><p>Dictionary with automatic list defaults</p></article><article class="card" data-search="collections & functools from collections import deque import deque"><div class="cmdrow"><pre><code>from collections import deque</code></pre><button class="copy" data-copy="from collections import deque">COPY</button></div><p>Import deque</p></article><article class="card" data-search="collections & functools deque(items) create double-ended queue"><div class="cmdrow"><pre><code>deque(items)</code></pre><button class="copy" data-copy="deque(items)">COPY</button></div><p>Create double-ended queue</p></article><article class="card" data-search="collections & functools q.appendleft(value) append to left"><div class="cmdrow"><pre><code>q.appendleft(value)</code></pre><button class="copy" data-copy="q.appendleft(value)">COPY</button></div><p>Append to left</p></article><article class="card" data-search="collections & functools q.popleft() pop from left"><div class="cmdrow"><pre><code>q.popleft()</code></pre><button class="copy" data-copy="q.popleft()">COPY</button></div><p>Pop from left</p></article><article class="card" data-search="collections & functools from functools import lru_cache import memoization helper"><div class="cmdrow"><pre><code>from functools import lru_cache</code></pre><button class="copy" data-copy="from functools import lru_cache">COPY</button></div><p>Import memoization helper</p></article><article class="card" data-search="collections & functools @lru_cache(maxsize=none) cache function results"><div class="cmdrow"><pre><code>@lru_cache(maxsize=None)</code></pre><button class="copy" data-copy="@lru_cache(maxsize=None)">COPY</button></div><p>Cache function results</p></article><article class="card" data-search="collections & functools from functools import partial import partial"><div class="cmdrow"><pre><code>from functools import partial</code></pre><button class="copy" data-copy="from functools import partial">COPY</button></div><p>Import partial</p></article><article class="card" data-search="collections & functools partial(func, fixed_arg) pre-fill function arguments"><div class="cmdrow"><pre><code>partial(func, fixed_arg)</code></pre><button class="copy" data-copy="partial(func, fixed_arg)">COPY</button></div><p>Pre-fill function arguments</p></article></div></div></section><section class="section" id="logging---cli"><button class="sectionhead"><span>Logging & Cli</span><small>14 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="logging & cli import logging import logging"><div class="cmdrow"><pre><code>import logging</code></pre><button class="copy" data-copy="import logging">COPY</button></div><p>Import logging</p></article><article class="card" data-search="logging & cli logging.basicconfig(level=logging.info) configure basic logging"><div class="cmdrow"><pre><code>logging.basicConfig(level=logging.INFO)</code></pre><button class="copy" data-copy="logging.basicConfig(level=logging.INFO)">COPY</button></div><p>Configure basic logging</p></article><article class="card" data-search="logging & cli logging.info('started') info message"><div class="cmdrow"><pre><code>logging.info('Started')</code></pre><button class="copy" data-copy="logging.info('Started')">COPY</button></div><p>Info message</p></article><article class="card" data-search="logging & cli logging.warning('something odd happened') warning message"><div class="cmdrow"><pre><code>logging.warning('Something odd happened')</code></pre><button class="copy" data-copy="logging.warning('Something odd happened')">COPY</button></div><p>Warning message</p></article><article class="card" data-search="logging & cli logging.error('failed') error message"><div class="cmdrow"><pre><code>logging.error('Failed')</code></pre><button class="copy" data-copy="logging.error('Failed')">COPY</button></div><p>Error message</p></article><article class="card" data-search="logging & cli logging.exception('operation failed') log exception traceback"><div class="cmdrow"><pre><code>logging.exception('Operation failed')</code></pre><button class="copy" data-copy="logging.exception('Operation failed')">COPY</button></div><p>Log exception traceback</p></article><article class="card" data-search="logging & cli logger = logging.getlogger(__name__) create module logger"><div class="cmdrow"><pre><code>logger = logging.getLogger(__name__)</code></pre><button class="copy" data-copy="logger = logging.getLogger(__name__)">COPY</button></div><p>Create module logger</p></article><article class="card" data-search="logging & cli import argparse import argparse"><div class="cmdrow"><pre><code>import argparse</code></pre><button class="copy" data-copy="import argparse">COPY</button></div><p>Import argparse</p></article><article class="card" data-search="logging & cli parser = argparse.argumentparser() create parser"><div class="cmdrow"><pre><code>parser = argparse.ArgumentParser()</code></pre><button class="copy" data-copy="parser = argparse.ArgumentParser()">COPY</button></div><p>Create parser</p></article><article class="card" data-search="logging & cli parser.add_argument('filename') add positional argument"><div class="cmdrow"><pre><code>parser.add_argument('filename')</code></pre><button class="copy" data-copy="parser.add_argument('filename')">COPY</button></div><p>Add positional argument</p></article><article class="card" data-search="logging & cli parser.add_argument('-v', '--verbose', action='store_true') add boolean flag"><div class="cmdrow"><pre><code>parser.add_argument('-v', '--verbose', action='store_true')</code></pre><button class="copy" data-copy="parser.add_argument('-v', '--verbose', action='store_true')">COPY</button></div><p>Add boolean flag</p></article><article class="card" data-search="logging & cli parser.add_argument('--count', type=int, default=1) add typed optional argument"><div class="cmdrow"><pre><code>parser.add_argument('--count', type=int, default=1)</code></pre><button class="copy" data-copy="parser.add_argument('--count', type=int, default=1)">COPY</button></div><p>Add typed optional argument</p></article><article class="card" data-search="logging & cli args = parser.parse_args() parse cli arguments"><div class="cmdrow"><pre><code>args = parser.parse_args()</code></pre><button class="copy" data-copy="args = parser.parse_args()">COPY</button></div><p>Parse CLI arguments</p></article><article class="card" data-search="logging & cli args.filename access parsed argument"><div class="cmdrow"><pre><code>args.filename</code></pre><button class="copy" data-copy="args.filename">COPY</button></div><p>Access parsed argument</p></article></div></div></section><section class="section" id="asyncio---concurrency"><button class="sectionhead"><span>Asyncio & Concurrency</span><small>17 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="asyncio & concurrency import asyncio import asyncio"><div class="cmdrow"><pre><code>import asyncio</code></pre><button class="copy" data-copy="import asyncio">COPY</button></div><p>Import asyncio</p></article><article class="card" data-search="asyncio & concurrency async def main(): |
| 224 | ... define coroutine"><div class="cmdrow"><pre><code>async def main(): |
| 225 | ...</code></pre><button class="copy" data-copy="async def main(): |
| 226 | ...">COPY</button></div><p>Define coroutine</p></article><article class="card" data-search="asyncio & concurrency await asyncio.sleep(1) non-blocking sleep"><div class="cmdrow"><pre><code>await asyncio.sleep(1)</code></pre><button class="copy" data-copy="await asyncio.sleep(1)">COPY</button></div><p>Non-blocking sleep</p></article><article class="card" data-search="asyncio & concurrency asyncio.run(main()) run top-level coroutine"><div class="cmdrow"><pre><code>asyncio.run(main())</code></pre><button class="copy" data-copy="asyncio.run(main())">COPY</button></div><p>Run top-level coroutine</p></article><article class="card" data-search="asyncio & concurrency task = asyncio.create_task(coro()) schedule coroutine"><div class="cmdrow"><pre><code>task = asyncio.create_task(coro())</code></pre><button class="copy" data-copy="task = asyncio.create_task(coro())">COPY</button></div><p>Schedule coroutine</p></article><article class="card" data-search="asyncio & concurrency await task wait for task"><div class="cmdrow"><pre><code>await task</code></pre><button class="copy" data-copy="await task">COPY</button></div><p>Wait for task</p></article><article class="card" data-search="asyncio & concurrency await asyncio.gather(coro1(), coro2()) run multiple awaitables concurrently"><div class="cmdrow"><pre><code>await asyncio.gather(coro1(), coro2())</code></pre><button class="copy" data-copy="await asyncio.gather(coro1(), coro2())">COPY</button></div><p>Run multiple awaitables concurrently</p></article><article class="card" data-search="asyncio & concurrency from threading import thread import thread"><div class="cmdrow"><pre><code>from threading import Thread</code></pre><button class="copy" data-copy="from threading import Thread">COPY</button></div><p>Import Thread</p></article><article class="card" data-search="asyncio & concurrency t = thread(target=func, args=(value,)) create a thread"><div class="cmdrow"><pre><code>t = Thread(target=func, args=(value,))</code></pre><button class="copy" data-copy="t = Thread(target=func, args=(value,))">COPY</button></div><p>Create a thread</p></article><article class="card" data-search="asyncio & concurrency t.start() start thread"><div class="cmdrow"><pre><code>t.start()</code></pre><button class="copy" data-copy="t.start()">COPY</button></div><p>Start thread</p></article><article class="card" data-search="asyncio & concurrency t.join() wait for thread"><div class="cmdrow"><pre><code>t.join()</code></pre><button class="copy" data-copy="t.join()">COPY</button></div><p>Wait for thread</p></article><article class="card" data-search="asyncio & concurrency from concurrent.futures import threadpoolexecutor import thread pool"><div class="cmdrow"><pre><code>from concurrent.futures import ThreadPoolExecutor</code></pre><button class="copy" data-copy="from concurrent.futures import ThreadPoolExecutor">COPY</button></div><p>Import thread pool</p></article><article class="card" data-search="asyncio & concurrency with threadpoolexecutor() as ex: |
| 227 | results = list(ex.map(func, items)) map work across threads"><div class="cmdrow"><pre><code>with ThreadPoolExecutor() as ex: |
| 228 | results = list(ex.map(func, items))</code></pre><button class="copy" data-copy="with ThreadPoolExecutor() as ex: |
| 229 | results = list(ex.map(func, items))">COPY</button></div><p>Map work across threads</p></article><article class="card" data-search="asyncio & concurrency from multiprocessing import process import process"><div class="cmdrow"><pre><code>from multiprocessing import Process</code></pre><button class="copy" data-copy="from multiprocessing import Process">COPY</button></div><p>Import Process</p></article><article class="card" data-search="asyncio & concurrency p = process(target=func) create child process"><div class="cmdrow"><pre><code>p = Process(target=func)</code></pre><button class="copy" data-copy="p = Process(target=func)">COPY</button></div><p>Create child process</p></article><article class="card" data-search="asyncio & concurrency p.start(); p.join() start and wait for process"><div class="cmdrow"><pre><code>p.start(); p.join()</code></pre><button class="copy" data-copy="p.start(); p.join()">COPY</button></div><p>Start and wait for process</p></article><article class="card" data-search="asyncio & concurrency from concurrent.futures import processpoolexecutor import process pool"><div class="cmdrow"><pre><code>from concurrent.futures import ProcessPoolExecutor</code></pre><button class="copy" data-copy="from concurrent.futures import ProcessPoolExecutor">COPY</button></div><p>Import process pool</p></article></div></div></section><section class="section" id="sqlite"><button class="sectionhead"><span>Sqlite</span><small>10 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="sqlite import sqlite3 import sqlite"><div class="cmdrow"><pre><code>import sqlite3</code></pre><button class="copy" data-copy="import sqlite3">COPY</button></div><p>Import SQLite</p></article><article class="card" data-search="sqlite conn = sqlite3.connect('app.db') open or create database"><div class="cmdrow"><pre><code>conn = sqlite3.connect('app.db')</code></pre><button class="copy" data-copy="conn = sqlite3.connect('app.db')">COPY</button></div><p>Open or create database</p></article><article class="card" data-search="sqlite cur = conn.cursor() create cursor"><div class="cmdrow"><pre><code>cur = conn.cursor()</code></pre><button class="copy" data-copy="cur = conn.cursor()">COPY</button></div><p>Create cursor</p></article><article class="card" data-search="sqlite cur.execute('create table if not exists users (id integer primary key, name text)') create table"><div class="cmdrow"><pre><code>cur.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)')</code></pre><button class="copy" data-copy="cur.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)')">COPY</button></div><p>Create table</p></article><article class="card" data-search="sqlite cur.execute('insert into users(name) values (?)', ('ada',)) insert with parameters"><div class="cmdrow"><pre><code>cur.execute('INSERT INTO users(name) VALUES (?)', ('Ada',))</code></pre><button class="copy" data-copy="cur.execute('INSERT INTO users(name) VALUES (?)', ('Ada',))">COPY</button></div><p>Insert with parameters</p></article><article class="card" data-search="sqlite conn.commit() commit transaction"><div class="cmdrow"><pre><code>conn.commit()</code></pre><button class="copy" data-copy="conn.commit()">COPY</button></div><p>Commit transaction</p></article><article class="card" data-search="sqlite cur.execute('select * from users') run select"><div class="cmdrow"><pre><code>cur.execute('SELECT * FROM users')</code></pre><button class="copy" data-copy="cur.execute('SELECT * FROM users')">COPY</button></div><p>Run SELECT</p></article><article class="card" data-search="sqlite rows = cur.fetchall() fetch all rows"><div class="cmdrow"><pre><code>rows = cur.fetchall()</code></pre><button class="copy" data-copy="rows = cur.fetchall()">COPY</button></div><p>Fetch all rows</p></article><article class="card" data-search="sqlite conn.close() close connection"><div class="cmdrow"><pre><code>conn.close()</code></pre><button class="copy" data-copy="conn.close()">COPY</button></div><p>Close connection</p></article><article class="card" data-search="sqlite with sqlite3.connect('app.db') as conn: |
| 230 | conn.execute(...) use database context manager"><div class="cmdrow"><pre><code>with sqlite3.connect('app.db') as conn: |
| 231 | conn.execute(...)</code></pre><button class="copy" data-copy="with sqlite3.connect('app.db') as conn: |
| 232 | conn.execute(...)">COPY</button></div><p>Use database context manager</p></article></div></div></section><section class="section" id="testing"><button class="sectionhead"><span>Testing</span><small>7 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="testing import unittest import unittest"><div class="cmdrow"><pre><code>import unittest</code></pre><button class="copy" data-copy="import unittest">COPY</button></div><p>Import unittest</p></article><article class="card" data-search="testing class testmath(unittest.testcase): |
| 233 | def test_add(self): |
| 234 | self.assertequal(1 + 1, 2) define a unit test"><div class="cmdrow"><pre><code>class TestMath(unittest.TestCase): |
| 235 | def test_add(self): |
| 236 | self.assertEqual(1 + 1, 2)</code></pre><button class="copy" data-copy="class TestMath(unittest.TestCase): |
| 237 | def test_add(self): |
| 238 | self.assertEqual(1 + 1, 2)">COPY</button></div><p>Define a unit test</p></article><article class="card" data-search="testing python -m unittest discover and run unittest tests"><div class="cmdrow"><pre><code>python -m unittest</code></pre><button class="copy" data-copy="python -m unittest">COPY</button></div><p>Discover and run unittest tests</p></article><article class="card" data-search="testing self.asserttrue(value) assert truth"><div class="cmdrow"><pre><code>self.assertTrue(value)</code></pre><button class="copy" data-copy="self.assertTrue(value)">COPY</button></div><p>Assert truth</p></article><article class="card" data-search="testing self.assertequal(a, b) assert equality"><div class="cmdrow"><pre><code>self.assertEqual(a, b)</code></pre><button class="copy" data-copy="self.assertEqual(a, b)">COPY</button></div><p>Assert equality</p></article><article class="card" data-search="testing self.assertraises(valueerror) assert exception"><div class="cmdrow"><pre><code>self.assertRaises(ValueError)</code></pre><button class="copy" data-copy="self.assertRaises(ValueError)">COPY</button></div><p>Assert exception</p></article><article class="card" data-search="testing python -m doctest file.py run doctests"><div class="cmdrow"><pre><code>python -m doctest file.py</code></pre><button class="copy" data-copy="python -m doctest file.py">COPY</button></div><p>Run doctests</p></article></div></div></section><section class="section" id="http-requests---third-party"><button class="sectionhead"><span>Http Requests — Third Party</span><small>8 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="http requests — third party python -m pip install requests install requests"><div class="cmdrow"><pre><code>python -m pip install requests</code></pre><button class="copy" data-copy="python -m pip install requests">COPY</button></div><p>Install Requests</p></article><article class="card" data-search="http requests — third party import requests import requests"><div class="cmdrow"><pre><code>import requests</code></pre><button class="copy" data-copy="import requests">COPY</button></div><p>Import Requests</p></article><article class="card" data-search="http requests — third party r = requests.get('https://example.com', timeout=10) http get request"><div class="cmdrow"><pre><code>r = requests.get('https://example.com', timeout=10)</code></pre><button class="copy" data-copy="r = requests.get('https://example.com', timeout=10)">COPY</button></div><p>HTTP GET request</p></article><article class="card" data-search="http requests — third party r.status_code read status code"><div class="cmdrow"><pre><code>r.status_code</code></pre><button class="copy" data-copy="r.status_code">COPY</button></div><p>Read status code</p></article><article class="card" data-search="http requests — third party r.text read response text"><div class="cmdrow"><pre><code>r.text</code></pre><button class="copy" data-copy="r.text">COPY</button></div><p>Read response text</p></article><article class="card" data-search="http requests — third party r.json() decode json response"><div class="cmdrow"><pre><code>r.json()</code></pre><button class="copy" data-copy="r.json()">COPY</button></div><p>Decode JSON response</p></article><article class="card" data-search="http requests — third party requests.post(url, json=data, timeout=10) post json data"><div class="cmdrow"><pre><code>requests.post(url, json=data, timeout=10)</code></pre><button class="copy" data-copy="requests.post(url, json=data, timeout=10)">COPY</button></div><p>POST JSON data</p></article><article class="card" data-search="http requests — third party r.raise_for_status() raise on http error"><div class="cmdrow"><pre><code>r.raise_for_status()</code></pre><button class="copy" data-copy="r.raise_for_status()">COPY</button></div><p>Raise on HTTP error</p></article></div></div></section><section class="section" id="useful-built-ins---one-liners"><button class="sectionhead"><span>Useful Built-Ins & One-Liners</span><small>22 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="useful built-ins & one-liners len(obj) number of items"><div class="cmdrow"><pre><code>len(obj)</code></pre><button class="copy" data-copy="len(obj)">COPY</button></div><p>Number of items</p></article><article class="card" data-search="useful built-ins & one-liners sorted(iterable) return sorted list"><div class="cmdrow"><pre><code>sorted(iterable)</code></pre><button class="copy" data-copy="sorted(iterable)">COPY</button></div><p>Return sorted list</p></article><article class="card" data-search="useful built-ins & one-liners reversed(sequence) reverse iterator"><div class="cmdrow"><pre><code>reversed(sequence)</code></pre><button class="copy" data-copy="reversed(sequence)">COPY</button></div><p>Reverse iterator</p></article><article class="card" data-search="useful built-ins & one-liners enumerate(iterable) pair with indexes"><div class="cmdrow"><pre><code>enumerate(iterable)</code></pre><button class="copy" data-copy="enumerate(iterable)">COPY</button></div><p>Pair with indexes</p></article><article class="card" data-search="useful built-ins & one-liners zip(a, b) pair multiple iterables"><div class="cmdrow"><pre><code>zip(a, b)</code></pre><button class="copy" data-copy="zip(a, b)">COPY</button></div><p>Pair multiple iterables</p></article><article class="card" data-search="useful built-ins & one-liners all(values) true if all are truthy"><div class="cmdrow"><pre><code>all(values)</code></pre><button class="copy" data-copy="all(values)">COPY</button></div><p>True if all are truthy</p></article><article class="card" data-search="useful built-ins & one-liners any(values) true if any are truthy"><div class="cmdrow"><pre><code>any(values)</code></pre><button class="copy" data-copy="any(values)">COPY</button></div><p>True if any are truthy</p></article><article class="card" data-search="useful built-ins & one-liners min(values) smallest value"><div class="cmdrow"><pre><code>min(values)</code></pre><button class="copy" data-copy="min(values)">COPY</button></div><p>Smallest value</p></article><article class="card" data-search="useful built-ins & one-liners max(values) largest value"><div class="cmdrow"><pre><code>max(values)</code></pre><button class="copy" data-copy="max(values)">COPY</button></div><p>Largest value</p></article><article class="card" data-search="useful built-ins & one-liners sum(values) sum numeric values"><div class="cmdrow"><pre><code>sum(values)</code></pre><button class="copy" data-copy="sum(values)">COPY</button></div><p>Sum numeric values</p></article><article class="card" data-search="useful built-ins & one-liners set(iterable) create set"><div class="cmdrow"><pre><code>set(iterable)</code></pre><button class="copy" data-copy="set(iterable)">COPY</button></div><p>Create set</p></article><article class="card" data-search="useful built-ins & one-liners list(iterable) create list"><div class="cmdrow"><pre><code>list(iterable)</code></pre><button class="copy" data-copy="list(iterable)">COPY</button></div><p>Create list</p></article><article class="card" data-search="useful built-ins & one-liners tuple(iterable) create tuple"><div class="cmdrow"><pre><code>tuple(iterable)</code></pre><button class="copy" data-copy="tuple(iterable)">COPY</button></div><p>Create tuple</p></article><article class="card" data-search="useful built-ins & one-liners dict(pairs) create dictionary"><div class="cmdrow"><pre><code>dict(pairs)</code></pre><button class="copy" data-copy="dict(pairs)">COPY</button></div><p>Create dictionary</p></article><article class="card" data-search="useful built-ins & one-liners numbers = [int(x) for x in input().split()] read space-separated integers"><div class="cmdrow"><pre><code>numbers = [int(x) for x in input().split()]</code></pre><button class="copy" data-copy="numbers = [int(x) for x in input().split()]">COPY</button></div><p>Read space-separated integers</p></article><article class="card" data-search="useful built-ins & one-liners unique = list(dict.fromkeys(items)) remove duplicates while preserving order"><div class="cmdrow"><pre><code>unique = list(dict.fromkeys(items))</code></pre><button class="copy" data-copy="unique = list(dict.fromkeys(items))">COPY</button></div><p>Remove duplicates while preserving order</p></article><article class="card" data-search="useful built-ins & one-liners flat = [x for row in matrix for x in row] flatten one level"><div class="cmdrow"><pre><code>flat = [x for row in matrix for x in row]</code></pre><button class="copy" data-copy="flat = [x for row in matrix for x in row]">COPY</button></div><p>Flatten one level</p></article><article class="card" data-search="useful built-ins & one-liners largest = max(items, key=len) find longest item"><div class="cmdrow"><pre><code>largest = max(items, key=len)</code></pre><button class="copy" data-copy="largest = max(items, key=len)">COPY</button></div><p>Find longest item</p></article><article class="card" data-search="useful built-ins & one-liners sorted_users = sorted(users, key=lambda u: u['name']) sort dictionaries by a field"><div class="cmdrow"><pre><code>sorted_users = sorted(users, key=lambda u: u['name'])</code></pre><button class="copy" data-copy="sorted_users = sorted(users, key=lambda u: u['name'])">COPY</button></div><p>Sort dictionaries by a field</p></article><article class="card" data-search="useful built-ins & one-liners pairs = dict(zip(keys, values)) build dictionary from two sequences"><div class="cmdrow"><pre><code>pairs = dict(zip(keys, values))</code></pre><button class="copy" data-copy="pairs = dict(zip(keys, values))">COPY</button></div><p>Build dictionary from two sequences</p></article><article class="card" data-search="useful built-ins & one-liners text = ' '.join(text.split()) normalize whitespace"><div class="cmdrow"><pre><code>text = ' '.join(text.split())</code></pre><button class="copy" data-copy="text = ' '.join(text.split())">COPY</button></div><p>Normalize whitespace</p></article><article class="card" data-search="useful built-ins & one-liners next((x for x in items if predicate(x)), none) get first match or none"><div class="cmdrow"><pre><code>next((x for x in items if predicate(x)), None)</code></pre><button class="copy" data-copy="next((x for x in items if predicate(x)), None)">COPY</button></div><p>Get first match or None</p></article></div></div></section><section class="section" id="common-pitfalls"><button class="sectionhead"><span>Common Pitfalls</span><small>8 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="common pitfalls if value == none: prefer `is none` for none checks"><div class="cmdrow"><pre><code>if value == None:</code></pre><button class="copy" data-copy="if value == None:">COPY</button></div><p>Prefer `is None` for None checks</p></article><article class="card" data-search="common pitfalls from module import * avoid wildcard imports in normal application code"><div class="cmdrow"><pre><code>from module import *</code></pre><button class="copy" data-copy="from module import *">COPY</button></div><p>Avoid wildcard imports in normal application code</p></article><article class="card" data-search="common pitfalls except: prefer catching specific exception types"><div class="cmdrow"><pre><code>except:</code></pre><button class="copy" data-copy="except:">COPY</button></div><p>Prefer catching specific exception types</p></article><article class="card" data-search="common pitfalls a = [[0] * 3] * 3 nested list multiplication shares inner lists"><div class="cmdrow"><pre><code>a = [[0] * 3] * 3</code></pre><button class="copy" data-copy="a = [[0] * 3] * 3">COPY</button></div><p>Nested list multiplication shares inner lists</p></article><article class="card" data-search="common pitfalls 0.1 + 0.2 == 0.3 floating-point values are approximate"><div class="cmdrow"><pre><code>0.1 + 0.2 == 0.3</code></pre><button class="copy" data-copy="0.1 + 0.2 == 0.3">COPY</button></div><p>Floating-point values are approximate</p></article><article class="card" data-search="common pitfalls items.sort() sort() modifies a list and returns none"><div class="cmdrow"><pre><code>items.sort()</code></pre><button class="copy" data-copy="items.sort()">COPY</button></div><p>sort() modifies a list and returns None</p></article><article class="card" data-search="common pitfalls print(func()) a function that only prints usually returns none"><div class="cmdrow"><pre><code>print(func())</code></pre><button class="copy" data-copy="print(func())">COPY</button></div><p>A function that only prints usually returns None</p></article><article class="card" data-search="common pitfalls def add(x, bucket=[]): |
| 239 | bucket.append(x) |
| 240 | return bucket avoid mutable default arguments; use none and create the list inside"><div class="cmdrow"><pre><code>def add(x, bucket=[]): |
| 241 | bucket.append(x) |
| 242 | return bucket</code></pre><button class="copy" data-copy="def add(x, bucket=[]): |
| 243 | bucket.append(x) |
| 244 | return bucket">COPY</button></div><p>Avoid mutable default arguments; use None and create the list inside</p></article></div></div></section><section class="section" id="formatting---code-quality"><button class="sectionhead"><span>Formatting & Code Quality</span><small>7 snippets</small><b>▾</b></button><div class="body"><div class="grid"><article class="card" data-search="formatting & code quality python -m py_compile file.py compile one file and catch syntax errors"><div class="cmdrow"><pre><code>python -m py_compile file.py</code></pre><button class="copy" data-copy="python -m py_compile file.py">COPY</button></div><p>Compile one file and catch syntax errors</p></article><article class="card" data-search="formatting & code quality python -m compileall . compile a project and catch syntax errors"><div class="cmdrow"><pre><code>python -m compileall .</code></pre><button class="copy" data-copy="python -m compileall .">COPY</button></div><p>Compile a project and catch syntax errors</p></article><article class="card" data-search="formatting & code quality python -m pip install black install black"><div class="cmdrow"><pre><code>python -m pip install black</code></pre><button class="copy" data-copy="python -m pip install black">COPY</button></div><p>Install Black</p></article><article class="card" data-search="formatting & code quality python -m black file.py format with black"><div class="cmdrow"><pre><code>python -m black file.py</code></pre><button class="copy" data-copy="python -m black file.py">COPY</button></div><p>Format with Black</p></article><article class="card" data-search="formatting & code quality python -m pip install ruff install ruff"><div class="cmdrow"><pre><code>python -m pip install ruff</code></pre><button class="copy" data-copy="python -m pip install ruff">COPY</button></div><p>Install Ruff</p></article><article class="card" data-search="formatting & code quality python -m ruff check . lint with ruff"><div class="cmdrow"><pre><code>python -m ruff check .</code></pre><button class="copy" data-copy="python -m ruff check .">COPY</button></div><p>Lint with Ruff</p></article><article class="card" data-search="formatting & code quality python -m ruff format . format with ruff"><div class="cmdrow"><pre><code>python -m ruff format .</code></pre><button class="copy" data-copy="python -m ruff format .">COPY</button></div><p>Format with Ruff</p></article></div></div></section></main></div> |
| 245 | <footer>Python Cheat Sheet • Offline-ready • Search and copy controls run locally in your browser.</footer> |
| 246 | <script> |
| 247 | const q=document.getElementById('search');const cards=[...document.querySelectorAll('.card')];const sections=[...document.querySelectorAll('.section')];q.addEventListener('input',()=>{const s=q.value.trim().toLowerCase();cards.forEach(c=>c.classList.toggle('hidden',s&&!c.dataset.search.includes(s)));sections.forEach(sec=>{const visible=sec.querySelectorAll('.card:not(.hidden)').length;sec.classList.toggle('hidden',s&&visible===0);if(s&&visible)sec.classList.remove('collapsed')})});document.querySelectorAll('.sectionhead').forEach(b=>b.onclick=()=>b.closest('.section').classList.toggle('collapsed'));document.getElementById('expand').onclick=()=>sections.forEach(s=>s.classList.remove('collapsed'));document.getElementById('collapse').onclick=()=>sections.forEach(s=>s.classList.add('collapsed'));document.addEventListener('click',async e=>{const b=e.target.closest('.copy');if(!b)return;try{await navigator.clipboard.writeText(b.dataset.copy);b.textContent='COPIED';setTimeout(()=>b.textContent='COPY',800)}catch{b.textContent='SELECT';setTimeout(()=>b.textContent='COPY',800)}}); |
| 248 | </script></body></html> |
admin / pythoncheats
Last active 2 weeks ago
Revision fd08bac18da9ae25e8001dc8ee001f690a94bbf3