- il videocorso "Google's Python Class" di Google Developers per Python 2.x;
- il corso universitario online del MIT OpenCourseWare tenuto da John Guttag, "6.00SC Introduction to Computer Science and Programming", sempre con Python 2.x.
mercoledì 20 novembre 2013
Sezione "Risorse Python" del blog: aggiornamento 3
Terzo aggiornamento per la sezione "Risorse Python" del blog. Ho aggiunto:
martedì 19 novembre 2013
Rilasciata nuova release Python 3.3.3
Nuovo aggiornamento per il ramo 3.x: è stata rilasciata la versione 3.3.3 di Python con numerosi bugfix.
C'è anche da ricordare che questa versione rispetto alla precedente 3.2, apporta ulteriori miglioramenti al linguaggio che lo rendono una scelta sempre più interessante rispetto al precedente ramo 2.x.
C'è anche da ricordare che questa versione rispetto alla precedente 3.2, apporta ulteriori miglioramenti al linguaggio che lo rendono una scelta sempre più interessante rispetto al precedente ramo 2.x.
Sezione "Risorse Python" del blog: aggiornamento 2
Secondo aggiornamento per la sezione "Risorse Python" del blog: ho aggiunto il videocorso di Marco Beri su Python 2.x.
sabato 16 novembre 2013
Pip disponibile di default a partire da Python 3.4
Per chi non lo conoscesse, pip è un tool per l'installazione e la gestione di pacchetti Python disponibile per sistemi operativi Unix/Linux, OS X, Windows, e versioni Python a partire da 2.6, passando per 2.7, 3.1, 3.2, fino all'ultima 3.3 e senza lasciare fuori PyPy.
È perfetto per evitare di doversi barcamenare con modalità diverse d'installazione a seconda del sistema operativo, e permette una gestione molto raffinata dei pacchetti.
La cosa non esaltante è che al momento va installato separatamente dopo l'installazione di Python sulla vostra macchina di sviluppo.
La buona notizia è che dalla versione 3.4 di Python pip sarà disponibile di default nell'installazione standard.
È perfetto per evitare di doversi barcamenare con modalità diverse d'installazione a seconda del sistema operativo, e permette una gestione molto raffinata dei pacchetti.
La cosa non esaltante è che al momento va installato separatamente dopo l'installazione di Python sulla vostra macchina di sviluppo.
La buona notizia è che dalla versione 3.4 di Python pip sarà disponibile di default nell'installazione standard.
domenica 10 novembre 2013
Rilasciata nuova release Python 2.7.6
È stata rilasciata la versione 2.7.6 di Python.
Com'è noto non sono previste nuove feature, si tratta esclusivamente di bugfix che andranno avanti fino alla versione finale, la 2.7.9 prevista per Maggio 2015.
A quel punto lo sviluppo del ramo 2.x potrà dirsi definitivamente concluso e si continuerà sul solo ramo 3.x.
Com'è noto non sono previste nuove feature, si tratta esclusivamente di bugfix che andranno avanti fino alla versione finale, la 2.7.9 prevista per Maggio 2015.
A quel punto lo sviluppo del ramo 2.x potrà dirsi definitivamente concluso e si continuerà sul solo ramo 3.x.
sabato 9 novembre 2013
Six: libreria per la compatibilita tra Python 2.x e Python 3.x
Uno dei dilemmi per chi inizia a studiare/usare Python è se concentrarsi su Python 2 oppure il più recente Python 3. Spesso la scelta è a favore del primo perché, fra gli altri motivi, alcune librerie/framework non supportano ancora Python 3.
Con la libreria di compatibilità Six, il cui nome deriva da 2 * 3 = 6, il prodotto dei numeri delle versione di Python coinvolte, è stato creato un wrapper che nascondendo le differenze permette a molte di queste librerie/framework di funzionare con entrambi le versioni di Python.
Tanto per dire, Django dalla versione 1.5 usa proprio Six per garantirsi la compatibilità sia con Python 2 (≥ 2.6.5) che con Python 3 (≥ 3.2).
Con la libreria di compatibilità Six, il cui nome deriva da 2 * 3 = 6, il prodotto dei numeri delle versione di Python coinvolte, è stato creato un wrapper che nascondendo le differenze permette a molte di queste librerie/framework di funzionare con entrambi le versioni di Python.
Tanto per dire, Django dalla versione 1.5 usa proprio Six per garantirsi la compatibilità sia con Python 2 (≥ 2.6.5) che con Python 3 (≥ 3.2).
La storia di Python raccontata dal suo creatore
Guido van Rossum che racconta la storia della sua creatura.
Buona visione.
Buona visione.
Aggiornata la sezione Risorse Python del blog
Ho aggiornato la pagina delle "Risorse Python" di questo blog, ora contiene tutto il materiale indispensabile per iniziare nel modo migliore a studiare Python.
Ho suddiviso il tutto in 4 sezione a seconda sia delle competenze informatiche che linguistiche:
Se trovate link non funzionanti, errori, omissioni, o volete segnalare risorse che a vostro avviso sono interessanti, usate i commenti che trovate alla fine di quella pagina.
Ho suddiviso il tutto in 4 sezione a seconda sia delle competenze informatiche che linguistiche:
- Libri Italiano - da zero
- Libri Italiano - da altri linguaggi
- Libri Inglese - da zero
- Libri Inglese - da altri linguaggi
Se trovate link non funzionanti, errori, omissioni, o volete segnalare risorse che a vostro avviso sono interessanti, usate i commenti che trovate alla fine di quella pagina.
venerdì 1 novembre 2013
Il miglior libro per imparare Python
È una domanda che in varie forme è stata spesso posta sul forum italiano di Python.
La risposta breve è: non esiste.
Molto dipende dalle conoscenze pregresse del lettore, sia informatiche che linguistiche.
Essenzialmente abbiamo:
Quegli stessi libri e molto altro ancora, per esempio tutorial, video, anche interi corsi universitari in Python, li trovate nella sezione "Risorse Python" del blog.
La risposta breve è: non esiste.
Molto dipende dalle conoscenze pregresse del lettore, sia informatiche che linguistiche.
Essenzialmente abbiamo:
- programmatore alle prime armi;
- programmatore proveniente da altri linguaggi;
- legge solo in italiano;
- legge anche in inglese.
Quegli stessi libri e molto altro ancora, per esempio tutorial, video, anche interi corsi universitari in Python, li trovate nella sezione "Risorse Python" del blog.
venerdì 1 marzo 2013
Formattazione di stringhe tramite l'operatore % - 2a parte
I segnaposto %s e %d, rispettivamente stringa e numero, visti nel post precedente parlando di espressioni di formattazione di stringa, non sono gli unici possibili: esistono molti altri di quelli che in realtà si chiamano codici di formattazione. Vediamo come usarli con qualche altro esempio.
Stampiamo il valore di
Con 2 cifre di precisione e zero colonne di ampiezza che sta per "nessun incolonnamento", quindi nessuna giustificazione:
Con 4 cifre di precisione e zero colonne di ampiezza. Notare l'arrotondamento del valore di pigreco, 3.14159 arrotondato a 3.1416:
Finora si è parlato sempre di giustificazione a destra, ma è possibile giustificare le stringhe anche a sinistra. Riprendiamo un esempio già visto ma modificato in tal senso:
Altro esempio:
Notate come il numero più a destra qui sopra sia molto spostato a destra rispetto alla virgola. È dovuto al fatto che è rappresentato da un numero ampio comunque 9 colonne come quello che lo precede, ma non ha gli zeri di riempimento.
Un esempio di notazione scientifica:
Un ultimo esempio che vediamo è quello in cui non sappiamo esattamente quante colonne deve essere ampio numero, ne il numero di cifre significative che servono. In questo caso possiamo usare delle variabili ulteriori per specificarlo come in questo esempio:
Potete notare come il secondo pigreco è formattato esattamente come il primo.
Il risultato è stato ottenuto inserendo degli asterischi al posto dei valori sconosciuti (larghezza in colonne del numero e precisione richiesta) nella stringa di formattazione a sinistra di %, alla sua destra invece, nelle parentesi tonde, sono state inseriti delle variabili nello stesso ordine delle informazioni mancanti.
Questo è solo un primo approccio alla formattazione di stringhe in Python tramite l'operatore %. Giocateci un po' a casa così da dissipare sul campo eventuali dubbi, e sperimentate ulteriori codici di formattazione di stringe fra quelli disponibili.
Stampiamo il valore di
pigreco
in tre modi diversi. Così come disponibile in Python attraverso il suo modulo math
:>>> import math >>> print(math.pi) 3.141592653589793
Con 2 cifre di precisione e zero colonne di ampiezza che sta per "nessun incolonnamento", quindi nessuna giustificazione:
>>> print("%0.2f" % math.pi) 3.14
Con 4 cifre di precisione e zero colonne di ampiezza. Notare l'arrotondamento del valore di pigreco, 3.14159 arrotondato a 3.1416:
>>> print("%0.4f" % math.pi) 3.1416
Finora si è parlato sempre di giustificazione a destra, ma è possibile giustificare le stringhe anche a sinistra. Riprendiamo un esempio già visto ma modificato in tal senso:
"""Stampa 3 variabile: un numero, il numero elevato al quadrato ed elevato alla quinta, ognuna come stringa ampia 6 colonne giustificata a sinistra. """ for x in range(1,10): y = x ** 2 z = x ** 5 print("%-6s%-6s%-6s" % (x,y,z)) 1 1 1 2 4 32 3 9 243 4 16 1024 5 25 3125 6 36 7776 7 49 16807 8 64 32768 9 81 59049
Altro esempio:
# Formattazione di stringa ampia 9 colonne, con e senza zeri di riempimento. x = 98765 stringa = "Zeri di riempimento, %09d; senza zeri di riempimento, %9d." % (x, x) print(stringa) Zeri di riempimento, 000098765; senza zeri di riempimento, 98765.
Notate come il numero più a destra qui sopra sia molto spostato a destra rispetto alla virgola. È dovuto al fatto che è rappresentato da un numero ampio comunque 9 colonne come quello che lo precede, ma non ha gli zeri di riempimento.
Un esempio di notazione scientifica:
# Formattazione di stringa ampia 9 colonne, con e senza zeri di riempimento. x = 98765 print("%010.4e." % x) 9.8765e+04.
Un ultimo esempio che vediamo è quello in cui non sappiamo esattamente quante colonne deve essere ampio numero, ne il numero di cifre significative che servono. In questo caso possiamo usare delle variabili ulteriori per specificarlo come in questo esempio:
import math x = math.pi larghezza = 8 precisione = 5 stringa = "%08.5f, %0*.*f" % (x, larghezza, precisione, x) print(stringa) 03.14159, 03.14159
Potete notare come il secondo pigreco è formattato esattamente come il primo.
Il risultato è stato ottenuto inserendo degli asterischi al posto dei valori sconosciuti (larghezza in colonne del numero e precisione richiesta) nella stringa di formattazione a sinistra di %, alla sua destra invece, nelle parentesi tonde, sono state inseriti delle variabili nello stesso ordine delle informazioni mancanti.
Questo è solo un primo approccio alla formattazione di stringhe in Python tramite l'operatore %. Giocateci un po' a casa così da dissipare sul campo eventuali dubbi, e sperimentate ulteriori codici di formattazione di stringe fra quelli disponibili.
Iscriviti a:
Post (Atom)