Guida ai suggerimenti sui tipi Python

Suggerimenti di tipo Python master per una migliore documentazione del codice, supporto IDE e analisi statica

Guida ai suggerimenti sui tipi Python

I suggerimenti sul tipo rendono il tuo codice Python più leggibile, gestibile e rilevano i bug prima del runtime.

Sintassi di base

def greet(name: str) -> str:
    return f"Hello, {name}!"

def add(a: int, b: int) -> int:
    return a + b

Tipi comuni

from typing import Optional, Union, Any

# Optional - can be None
def find_user(user_id: int) -> Optional[User]:
    ...

# Union - multiple types (Python 3.10+: use |)
def process(value: Union[str, int]) -> str:
    ...

# Python 3.10+ syntax
def process(value: str | int) -> str:
    ...

Collezioni

CODICE_BLOCCO_2

Alias di tipo

from typing import TypeAlias

UserId: TypeAlias = int
UserMap: TypeAlias = dict[UserId, "User"]

def get_users() -> UserMap:
    ...

Controllo del tipo statico

Utilizza mypy o pyright per verificare i tipi:

mypy your_module.py
pyright your_module.py

Entrambi si integrano con la maggior parte degli IDE per un feedback in tempo reale.