Alessio Forti

Primi passi con Python

Le mie conoscenze in ambito di programmazione sono alquanto basilari e avendo fatto qualche progetto web, le mie conoscenze (perlomeno, quelle che padroneggio) ad oggi si fermano all’HTML, ai CSS e qualche inezia di Javascript. Ecco, da autodidatta non sono mai riuscito ad imparare e ad usare nel mondo reale un linguaggio di scripting come il Javascrpit; non tanto perché sia un linguaggio astruso e impossibile da imparare, ma piuttosto perché non avendo mai avuto qualcuno che mi spiegasse e insegnasse la fine arte della programmazione, ero letteralmente spaventato dal dover ricordare regole sintattiche, nomi di funzioni, usi e costumi di Javascript nonostante gli ottimi tutorial che si possono trovare in rete. Figuriamoci prendere in considerazione linguaggi di programmazione veri e propri! Bene, una volta iscritto alla Facoltà di Informatica, durante il primo giorno del corso di programmazione il professore ci spiega che useremo tre linguaggi di programmazione, gradualmente: Python, C e Java. Una volta tornato a casa ho cercato qualche informazione in più sul primo linguaggio che useremo durante il corso: Python.

Credetemi, sono rimasto veramente sconvolto quando ho scoperto che il tradizionale “Hello World!” in Python si scrive semplicemente

print "Hello World!"

Sconvolgente! Con una sintassi estremamente ridotta e non complessa ottengo esattamente quello che voglio e cioè stampare a video la frase “Hello World!”.

Il mio stupore può sembrare banale agli occhi di un programmatore esperto, ma dal mio punto di vista è veramente emozionante.

Ma facciamo un passo indietro. Intanto bisogna dire che Python è un linguaggio interpretato, un po come Javascript; questo significa che il codice sorgente non viene compilato nel linguaggio macchina e immagazzinato dentro un file eseguibile ma che, al contrario, il codice sorgente del programma che scriveremo deve essere per così dire tradotto da quello che viene chiamato Interprete. Nei sistemi Unix e Unix-like, Python è presente di default nella distribuzione (anche se probabilmente non aggiornato all’ultima versione disponibile) quindi potremo far interpretare il nostro codice direttamente da terminale. Al contrario, nei sistemi Windows, Python non è installato di default così dovremo andare a recuperare da soli l’installer sul sito python.org, dove potremo trovare anche gli installer per gli altri sistemi operativi. Su Windows, l’interprete sarà il .exe che verrà creato dall’installer di Python.

Bene, ora siamo pronti a fare il primo passo con Python. Io ho un Mac quindi apro il terminale e scrivo semplicemente python. Quello che viene restituito è ciò che segue:

Python 2.7.1 (r271:86832, Jun 16 2011, 16:59:05)
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

Abbiamo detto al terminale di aprire una nuova sessione dell’interprete di Python. Quello che è importante notare sono due cose: alla prima riga ci viene specificata la versione installata sulla macchina (nel mio caso è la 2.7.1), l’altra sono i tre simboli >>>: quando li incontriamo significa che è possibile inserire delle istruzioni. Per esempio, se ora scriviamo 1 + 1 e pigiamo invio, otterremo a video 2 e l’interprete sarà pronto per ricevere nuove istruzioni:

>>> 1 + 1
2
>>>

Eccitante vero? Ma ora scriviamo la nostra prima istruzione che per tradizione è “Hello World!”. Per farlo, come avrete visto all’inizio dell’articolo, useremo la funzione print di Python:

>>> print "Hello World!"
Hello World!
>>>

Come avrete capito la funzione print stampa a video ciò che si trova dopo di essa; nel nostro caso stampa la stringa di caratteri contenuta dentro virgolette. Come si può vedere, la sintassi è estremamente semplice e l’unica cosa importante da tenere a mente è che scrivere "Hello World!" (con le virgolette) è esattamente equivalente a scrivere 'Hello World!' (con gli apici). Potremo quindi scrivere una stringa di caratteri sia tra virgolette, sia tra apici, ma non potremo scrivere 'Hello World!" (con un apice e una virgoletta) perché Python non riuscirebbe a capire dove inizia e dove finisce la stringa.

Per fare un’ altro passettino in avanti introduciamo le variabili. In Python, a differenza di altri linguaggi, è molto più intuitivo definire una variabile (per esempio in Javascript scriveremmo var nomeVariabile = valoreVariabile), basta scrivere il nome della variabile ed assegnarlo al suo valore: nomeVariabile = valoreVariabile. Quindi, per esempio, possiamo scrivere:

>>> a = 2
>>> b = 5
>>>

In questo caso abbiamo assegnato ad a il valore 2 e a b il valore 5. Ora possiamo fare delle banali operazioni con queste due variabili. Per esempio:

>>> a + b
7
>>>

che equivale a scrivere

>>> print a + b
7
>>>

Allo stesso modo possiamo scrivere

>>> a = "Hello "
>>> b = "World!"
>>> print a + b
Hello World!
>>>

e sembra che non sia finita quì. 😉