developer reference

Python cheat sheet

Reference pratica per usare Python tutti i giorni con ricerca, copia comando e stampa PDF. Finalmente un sito che non ti obbliga a scavare in dieci tab aperti.

Vai ai comandi
21
comandi
8
categorie
0
dipendenze

21 comandi visibili

Tipi

4 comandi
list

Lista: ordinata, mutabile, con duplicati

Tipisicuro
Esempio pratico
l = [1, 2, 3]
l.append(4)       # aggiunge in fondo
l.insert(0, 0)    # inserisce in posizione
l.extend([5,6])   # unisce lista
l.pop()           # rimuove e restituisce ultimo
l.sort(key=lambda x: -x)   # ordina
dict

Dizionario: chiave→valore, preserva ordine (3.7+)

Tipisicuro
Esempio pratico
d = {"a": 1, "b": 2}
d.get("c", 0)     # valore con fallback
d.items()         # coppie (k, v)
d.update({"c": 3})
d.pop("a")        # rimuove chiave
d = {**d1, **d2}  # merge (3.9+: d1|d2)
set

Set: unico, non ordinato, operazioni insiemi

Tipisicuro
Esempio pratico
s = {1, 2, 3}
s.add(4)
s.discard(99)     # non lancia errore se assente
s1 & s2           # intersezione
s1 | s2           # unione
s1 - s2           # differenza
tuple

Tupla immutabile; hashable e utilizzabile come chiave di dizionario solo se ogni elemento è hashable

Tipisicuro
Esempio pratico
t = (1, 2, 3)
x, y, z = t       # unpacking
a, *rest = t      # star unpacking

Stringhe

3 comandi
f-string

Interpolazione stringhe moderna (3.6+)

Stringhesicuro
Esempio pratico
name = "Enzo"
f"Hello {name}"
f"{3.14159:.2f}"   # 2 decimali → "3.14"
f"{100_000:,}"    # migliaia → "100,000"
f"{name!r}"       # repr
str methods

Metodi stringa più comuni

Stringhesicuro
Esempio pratico
s = "  Hello World  "
s.strip()         # rimuove spazi
s.lower() / s.upper()
s.split(",")      # split su separatore
",".join(["a","b","c"])   # "a,b,c"
s.replace("Hello","Hi")
s.startswith("He") / s.endswith("d")
str slicing

Slicing e indexing

Stringhesicuro
Esempio pratico
s = "Hello"
s[0]    # "H"
s[-1]   # "o"
s[1:4]  # "ell"
s[::-1] # "olleH" (reverse)
s[::2]  # "Hlo" (step)

Funzioni

4 comandi
def

Definizione funzione con default, *args, **kwargs

Funzionisicuro
Esempio pratico
def greet(name, greeting="Hello"):
    return f"{greeting}, {name}"

def multi(*args, **kwargs):
    print(args)    # tupla
    print(kwargs)  # dict
lambda

Funzione anonima inline

Funzionisicuro
Esempio pratico
sq = lambda x: x**2
sorted(data, key=lambda x: x["age"])
filter(lambda x: x>0, nums)
decorator

Funzione che wrappa un'altra funzione

Funzionisicuro
Esempio pratico
import functools

def log(func):
    @functools.wraps(func)
    def wrapper(*a, **kw):
        print(f"Calling {func.__name__}")
        return func(*a, **kw)
    return wrapper

@log
def add(a, b): return a+b
yield

Generator: produce valori lazy

Funzionisicuro
Esempio pratico
def countdown(n):
    while n > 0:
        yield n
        n -= 1

for x in countdown(5): print(x)

Comprehensions

3 comandi
list comp

List comprehension con filtro opzionale

Comprehensionssicuro
Esempio pratico
[x**2 for x in range(10)]
[x for x in data if x > 0]
[(x, y) for x in a for y in b]  # nested
dict comp

Dict comprehension

Comprehensionssicuro
Esempio pratico
{k: v for k, v in items.items() if v}
{word: len(word) for word in words}
generator expr

Espressione generatore: produce valori in modo lazy senza costruire l’intera lista dei risultati

Comprehensionssicuro
Esempio pratico
total = sum(x**2 for x in range(1000))
any(x > 100 for x in values)
next(x for x in data if x["id"]==5)

Classi

2 comandi
class

Definizione classe con __init__, property, classmethod

Classisicuro
Esempio pratico
class Circle:
    def __init__(self, r): self.r = r

    @property
    def area(self): return 3.14 * self.r**2

    @classmethod
    def unit(cls): return cls(1)

    def __repr__(self): return f"Circle(r={self.r})"
dataclass

Classe con boilerplate automatico (3.7+)

Classisicuro
Esempio pratico
from dataclasses import dataclass, field

@dataclass
class Point:
    x: float
    y: float
    label: str = ""
    tags: list = field(default_factory=list)

p = Point(1.0, 2.0)

File I/O

2 comandi
open / pathlib

Lettura e scrittura file

File I/Osicuro
Esempio pratico
# lettura
with open("f.txt") as f:
    data = f.read()

# scrittura
with open("f.txt","w") as f:
    f.write("hello")

# pathlib (consigliato)
from pathlib import Path
p = Path("data/file.txt")
p.read_text() / p.write_text("x")
list(Path(".").glob("**/*.py"))
json

Serializzazione JSON

File I/Osicuro
Esempio pratico
import json

data = {"key": [1, 2, 3]}
json.dumps(data, indent=2)
json.loads('{"a":1}')

with open("f.json","w") as f:
    json.dump(data, f, indent=2)

Eccezioni

1 comandi
try / except

Gestione eccezioni con finally e raise

Eccezionisicuro
Esempio pratico
try:
    result = 1 / x
except ZeroDivisionError as e:
    print(f"Errore: {e}")
except (TypeError, ValueError):
    raise
finally:
    cleanup()

# raise personalizzato
raise ValueError(f"Invalid value: {x}")

Built-in

2 comandi
map / filter / zip

Funzioni di ordine superiore sui contenitori

Built-insicuro
Esempio pratico
list(map(str, [1,2,3]))       # ["1","2","3"]
list(filter(None, [0,1,2]))   # [1,2]
list(zip([1,2],[3,4]))        # [(1,3),(2,4)]
enumerate / sorted / any / all

Utility built-in essenziali

Built-insicuro
Esempio pratico
for i, v in enumerate(items, 1): ...
sorted(data, key=lambda x: x["n"], reverse=True)
any(x > 10 for x in vals)
all(isinstance(x, int) for x in vals)

Come usare questa cheat sheet Python

Ogni tupla può essere una chiave di dizionario?

No. Una tupla è hashable solo se tutti gli elementi contenuti sono hashable. (1, 2) può essere una chiave, (1, [2]) no.

Posso stampare la scheda in PDF?

Usa Stampa PDF. La versione stampabile include tutti i comandi e gli esempi pratici, anche nelle sezioni nascoste dalla ricerca.

Posso usarla in locale?

Sì. Servi i file statici con un server HTTP locale. Ricerca, filtri e copia funzionano nel browser; il tester Regex richiede un contesto HTTP con worker abilitati.