Sfruttare le funzionalità del linguaggio Python per produrre codice chiaro, conciso e gestibile.
Pythonic significa codice che non si limita a ottenere la sintassi corretta, ma che segue le convenzioni della comunità Python e utilizza il linguaggio nel modo in cui è inteso essere utilizzato.
Questo è forse più facile da spiegare con un esempio negativo, come nell'articolo collegato alle altre risposte. Esempi di codice non pitonico provengono spesso da utenti di altri linguaggi, che invece di apprendere schemi di programmazione Python come comprensioni di elenchi o espressioni di generatori, tentano di utilizzare schemi più comunemente usati in C o java. I loop sono esempi particolarmente comuni di questo.
Ad esempio in Java potrei usare
for i in (i; i < items.length ; i++)
{
n = items[i];
... now do something
}
In Python possiamo provare a replicarlo usando i cicli while, ma sarebbe più pulito da usare
for i in items:
i.perform_action()
O anche un'espressione generatrice
(i.some_attribute for i in items)
Quindi, essenzialmente, quando qualcuno dice che qualcosa non è pitonico, sta dicendo che il codice potrebbe essere riscritto in un modo che si adatta meglio allo stile di codifica dei pitoni.
La digitazione import thissulla riga di comando fornisce un riepilogo dei principi di Python. Meno noto è che il codice sorgente di import thisè decisamente, e in base alla progettazione, non pitonico! Dai un'occhiata per un esempio di cosa non fare.