I libri su Python

Sono stati tradotti alcuni libri su Python con il supporto dei componenti della comunità italiana, periodicamente viene scelto un testo, ovviamente "libero " e viene tradotto. Sono gradite collaborazioni, vedete la sezione Aiutaci!!! se volete contribuire.

I formati disponibili sono tutti compressi.

Libri in italiano

Da non tralasciare il Tutorial di Guido Van Rossum che tra l'altro con la Libreria di riferimento e il Manuale di riferimento del linguaggio fanno parte integrante della documentazione ufficiale tradotta di Python, disponibile in tutti i formati.

Libri veri, di carta...

In circolazione di libri sul linguaggio di programmazione Python, in lingua italiana, ce ne sono tre, il primo, edito dalla APOGEO è la traduzione di "Python 2.1 Bible", del 2001, il secondo, del 2004, è la traduzione del "Learning Python, second edition", edito dalla Hoepli, infine il terzo è il primo libro originale in italiano:

[Python-2.1] Python 2.1 Tutto e oltre
David Brueck
Stephan Tanner
I pareri espressi dai partecipanti alla vecchia ML e al news group su questo testo sono discordanti. Di sicuro è basato su una versione del linguaggio un po' datata, come si evince dal titolo, la versione è la 2.1. Molti ne criticano pure la traduzione...
"Personalmente l'ho comprato e forse a causa della mia inesperienza l'ho trovato comunque molto utile, specie se sei un principiante, con il supporto i testi tradotti dai collaboratori di questo sito l'ho trovato molto utile come guida di riferimento."
  
[Progconpyth] Programmare con Python
Lutz Mark e Ascher David
Il volume costituisce uno strumento completo per imparare Python e la programmazione orientata agli oggetti. È aggiornato alla versione 2.3 dell'interprete. Per rendere piu' concrete le applicazioni del linguaggio, vengono inoltre presentati molti nuovi scenari d'uso.
"Le recensioni sembrano tutte buone..."
[Python Pocket] Python Pocket
Marco Beri
Questo è il primo libro originale italiano dedicato a Python. Il volume, aggiornato a Python 2.5, introduce gli utenti Windows e Unix all'utilizzo di Python, partendo dai concetti fondamentali per poi passare alla pratica con esemplificazioni di complessità crescente.
Su gentile concessione dell'editore, su python.it è disponibile un estratto di 50 pagine del libro (su un totale di 216 pagine).
Il presente documento è liberamente e gratuitamente distribuibile a scopi promozionali. Vietata la vendita e qualsiasi utilizzo commerciale.

Chiaramente, per chi conosce l'inglese esistono molti più testi, un'ottima soluzione è acquistare direttamente un libro all'estero. A questo proposito il recente news group italiano si è espresso quasi all'unanimità con grande apprezzamento verso questi due testi:

[Nutshell] Python in a Nutshell
Alex Martelli
Il testo, come è tipico per i "Nutshell" di O'Reilly, è inteso anzitutto come manuale di riferimento, conciso, essenziale e pragmatico, per Python e per le sue librerie. A differenza dei manuali di riferimento "ufficiali", non è tenuto a coprire il 100% degli argomenti, e quindi evita le cose più oscure, strane e marginali, selezionando invece tutte le parti di massima utilità pratica; questo gli permette, nonostante la concisione, di coprire non solo le librerie standard di Python, ma anche alcune delle estensioni più importanti (per GUI, calcolo numerico, accesso a DB, ecc). Riesce inoltre a fornire tanti piccoli ma preziosi consigli pratici e persino una discreta collezione di piccoli ma utili esempi (particolarmente preziosi quelli del capitolo su socket e server di rete, dove lo stesso piccolissimo server viene realizzato ripetutamente con i più svariati approcci e moduli, sia standard sia di estensione). Il testo copre più che altro Python 2.2 (peraltro, Python 2.3 è vicinissimo a 2.2, quindi non richiede un aggiornamento del testo stesso). Benché, come già detto, sia anzitutto un manuale di riferimento, parecchi programmatori, già esperti in altri linguaggi ma digiuni di Python, hanno riferito di avere trovato questo testo molto utile anche per l'apprendimento di Python stesso.
  
[Cookbook] Python Cookbook
Alex Martelli e David Ascher
Il testo è una "antologia" di esempi di uso di Python per risolvere centinaia di diversi problemi, con oltre cento autori, ma uno stile reso più uniformemente leggibile e chiaro dall'infaticabile lavoro editoriale di Alex e David, che hanno assicurato che ogni "ricetta" fosse accompagnata da abbondante discussione, possibilità alternative, e opportuni "puntatori" sia all'interno del libro stesso sia ad altri documenti disponibili in linea, compresa la documentazione "ufficiale" di Python. Ogni capitolo, relativo ad una data categoria di argomenti (l'XML, la rete, la programmazione distribuita, gli algoritmi, ...) è preceduto da un'introduzione scritta da un autore particolarmente esperto relativamente alla data categoria: alcuni di questi testi (di Guido van Rossum, Tim Peters, Alex Martelli, Fredrik Lundh, Paul Prescott, e tanti altri ancora) sono dei veri gioielli. Purtroppo la versione di Python usata nelle "ricette" varia: per lo più si tratta di 2.1, ma si trovano anche alcune che usano 2.0 o persino versioni precedenti, e solo poche toccano 2.2. In molti casi questo non ha importanza, ma ci sono anche degli esempi che, se si usasse solo e uniformemente la versione più aggiornata di Python, si potrebbero esprimere più semplicemente.

Il consiglio personale di Alex, per chi sia in dubbio relativamente all'acquisto di questi libri (ad esempio, per l'incertezza sulla propria competenza in inglese), è il seguente: iscriversi al servizio di lettura di libri in linea offerto da O'Reilly a safari.oreilly.com!

Le prime due settimane sono gratuite, e in due settimane si possono leggere e anche studiare ampie parti di questi libri (o, a scelta, altri di O'Reilly, sia relativi a Python sia ad altri argomenti), e così decidere a ragion veduta se meriti o meno acquistarli. Basta ricordarsi di cancellare la propria iscrizione entro 14 giorni per non dovere pagare l'abbonamento a Safari (a meno che, ovviamente, non lo si ritenga abbastanza utile da valere la spesa!).