Python è un linguaggio di programmazione ad alto livello, molto popolare ed impiegato per i più disparati usi. Viene utilizzato da molti sviluppatori come primo linguaggio proprio per il suo alto livello di astrazione. Non sapendo come cominciare ad utilizzarlo, ti sei chiesto quali siano i programmi per programmare in Python più utilizzati. Per l’esattezza, lo hai chiesto al web ed è così che sei arrivato così sul mio blog.
Nella guida che segue, ti aiuterò infatti a muovere i primi passi in Python per capirne i concetti fondamentali. Inoltre, ti spiegherò come cominciare a muoverti per sviluppare in python. In particolare, ti consiglierò degli strumenti utili per programmare, in modo da semplificarti la vita durante lo sviluppo. Per ultimo, ti fornirò uno script già compilato per la generazione dei numeri primi. Sei pronto? D’accordo, allora iniziamo subito.
Programmi per programmare in Python
Prima di spiegarti quali sono i migliori programmi per programmare in Python, è necessario fare una premessa. I software professionali per sviluppare in Python dispongono di funzionalità e comodità differenti rispetto a quelli gratuiti (ovviamente). In ogni caso, nella guida seguente ho introdotto alcuni programmi per Python gratuiti che sono davvero ricchi di opzioni e garantiscono un elevato controllo del codice.
Ciò premesso, di seguito trovi gli approfondimenti dedicati un pò alla storia di Python e ai relativi software di programmazione da installare sul tuo PC Windows, Linux o Mac per iniziare ad utilizzare questo linguaggio. Inoltre, trovi uno script in Python per generare i numeri primi. Leggi ed applica i passaggi in base alle tue esigenze.
Indice
- Cos’è e a cosa serve Python?
- Programmi per scrivere in Python
- Generatore di numeri primi in Python
- Altri IDE ed editor per Python
- Shell di Python
Cos’è e a cosa serve Python?
Python è un software libero e gratuito, open source per l’esattezza. Ciò significa che puoi modificarlo e ridistribuirlo a tuo piacimento. Questo perché la sua licenza ti permette di farlo.
Python è un linguaggio interpretato: senza farti addentrare troppo nei tecnicismi, significa che quando eseguirai il tuo programma in Python, il codice che avrai scritto verrà passato ad un un altro programma (interprete), in grado di tradurre il codice in un linguaggio comprensibile alla macchina. Questo, ovviamente, comporta un calo di performance rispetto ad un linguaggio dove si compilano i sorgenti (in realtà anche in Python esiste un fase di pre-compilazione, ma non ti faccio entrare troppo nel dettaglio).
Questo linguaggio di programmazione è impiegato per moltissimi utilizzi, in quanto è relativamente semplice mantenere un codice in Python rispetto ad un codice in altri linguaggi più a basso livello. Inoltre, ti rende la vita più facile sotto molti punti di vista, sollevandoti dall’onore, ad esempio, di gestire i tipi e la memoria.
Python è usato in moltissimi ambiti, principalmente nell’ambito del Data Analisys e nello sviluppo web, perché, come ti ho detto, Python è molto versatile ed estendibile. Per altro, si trovano molte librerie già pronte all’uso.
Se dai un occhiata ai dati raccolti da JetBrains (che produce uno dei migliori ambienti di sviluppo per Python che vedremo in seguito), reperibili anche a questo indirizzo (o guardando l’immagine di esempio), potrai osservare delle statiche importanti e molti altri dati. Particolarmente, potrebbe interessarti quello sulla piattaforma di sviluppo più usata, che è ovviamente Gnu / Linux. Quindi, prima di cominciare a sviluppare, scegli bene il tuo ambiente di sviluppo.
Programmi per scrivere in Python
Se hai installato l’interprete Python sul tuo PC, tutto ciò che ti serve per scrivere il codice in Python è un semplice editor di testo. E finché scrivi poche righe di codice va anche bene. Poi, quando incomincerai a scrivere molte righe di codice o ti troverai a gestire progetti complessi, troverai limitante un banale editor di testo. Per questo motivo, come veri programmi per programmare in Python, ti mostrerò degli editor di testo più avanzati e degli IDE (ambienti di sviluppo integrati) ancora più complessi.
Geany
Se non hai particolari esigenze e cerchi un editor di testo leggero, veloce ed affidabile, allora Geany è uno dei programmi per programmare in Python che potrebbe fare al caso tuo.
Geany viene distribuito come software libero e supporta vari linguaggi di programmazione, quali C, C++, C#, Java, JavaScript, PHP, HTML, LaTeX, CSS, Python, Perl, Ruby, Pascal, Haskell e BASIC. Geany ti permette di eseguire il tuo codice Python comodamente dalla barra superiore in un terminale da te scelto.
Per altri linguaggi, come C e C++, supporta anche la compilazione nell’editor stesso. Inoltre, supporta l’indentazione automatica (fondamentale in python), la chiusura automatica delle parentesi e molte altre funzionalità, tra cui l’autocompletamento del testo.
Geany fa al caso tuo se il tuo computer non è particolarmente performante e non hai necessita di un IDE avanzato. Geany è disponibile per *BSD, OSX, GNU/Linux, Solaris e Windows. Questo software supporta anche molti plugin e temi. Puoi scaricare Geany gratuitamente da questo indirizzo.
Se invece sei su GNU/Linux, puoi installare Geany dal tuo gestore pacchetti. Ad esempio, per Debian, Ubuntu e Mint digita il seguente comando in un emulatore di terminale:
# apt-get install geany
per Arch/manjaro:
# pacman -S geany
per Fedora:
#dnf install geany
Pycharm
Pycharm è uno dei migliori programmi per programmare in Python. Ha una marea di funzionalità ed integrazioni con altre tecnologie utili per lo sviluppo in Python. Insomma, se vuoi fare sul serio usi Pycharm! Non a caso compagnie come HP, Twitter, DICE e Pinterest lo utilizzano.
Puoi scaricare due versioni di Pycharm: la versione Community e quella Professional (a pagamento). Ti posso assicurare che già la versione community è ricchissima di funzioni utili per lo sviluppo. In ogni caso, se vuoi provare la versione Professional e vedere come gira sul tuo PC, puoi comunque farlo per 30 giorni. Altrimenti, puoi usare la versione community senza alcun costo. Voglio comunque ricordarti che se sei uno studente, puoi richiedere gratuitamente la versione Professional di Pycharm.
Come puoi notare visualizzando l’immagine di esempio che ho inserito, ci sono davvero molte funzionalità in Pycharm. Ed è normale, quindi, che Pycharm sia abbastanza pesante.
Puoi effettuare il download gratuito di Pycharm da questa pagina. Per installare il software su Windows, ti basterà avviare il file .exe. Per GNU/Linux, invece, è il solito discorso di Geany, ovvero puoi installarlo dal gestore pacchetti se presente nei repository. In alternativa, puoi scaricare (dallo stesso sito che ti ho linkato sopra) il file tar.gz, estrarlo con il tuo gestore archivi ed avviare, nella cartella /bin
, il file pycharm.sh
tramite Terminale. Quindi, per farlo ti basterà aprire un’interfaccia a riga di comando (dopo aver scompattato Pycharm) e digitare:
cd pycharm-*/bin && ./pycharm.sh
Tra le funzionalità più importati di Pycharm, potrebbero interessarti:
- Autocompletamento del codice
- Formattazione del codice
- Integrazione con software di controllo versione, come ad esempio Git
- Analisi del codice (che a mio avviso è molto intelligente, praticamente Pycharm ti farà notare gli errori)
- Ottimizzazione del codice e suggerimenti in ogni blocco
Inoltre, Pycharm controlla anche se il tuo codice è conforme alle PEP8, che non sono altro che convenzioni che decidono i programmatori esperti di Python per scrivere un buon codice. Ecco ad esempio Pycharm che suggerisce cosa inserire nel print:
Qui invece Pycharm ci dice che non stiamo rispettando le convenzioni:
Ovviamente, come ogni IDE che si rispetti, Pycharm mette a disposizione un ottimo Debugger, che ti sarà certamente utile durante lo sviluppo dei tuoi software. Un momento, non sai a cosa serve un Debugger? Bene, cerco di spiegarti in modo semplice cosa fa. Un debugger è utile per permettere al programmatore di fermare il flusso d’esecuzione del codice in una determinata riga di codice (e non solo) e per vedere lo stato di quel programma prima dell’esecuzione di quella riga.
Ti faccio un esempio con un piccolo script in Python che genera i numeri primi per farti capire meglio di cosa sto parlando. Lo trovi scorrendo la pagina verso il basso.
Generatore di numeri primi in Python
Dopo averti fatto vedere i due programmi per programmare in Python più utilizzati, ti faccio vedere come implementare un generatore di numeri primi in Python usando Pycharm. Quello che ti faccio vedere adesso è un’implementazione del crivello di Eratostene. Se non sai come funziona, leggi prima la spiegazione di Wikipedia.
Il codice contenuto nel file wordsmart.py
che ho scritto applica un algoritmo molto banale, ed è il seguente:
def crivello(n):
setaccio = [True] * (n + 1)
numeri_primi = []
for i in range(2, n // 2 + 2):
if setaccio[i]:
for k in range(2 * i, n + 1, i):
setaccio[k] = False
for i in range(1, n + 1):
if setaccio[i]:
print(i)
numeri_primi.append(i)
crivello(10)
La nostra implementazione non è né la più veloce né la più efficiente, ma è giusto per dare un occhiata alle funzionalità di debug di Pycharm. Il codice, banalmente, applica l’algoritmo di setaccio ad una lista di n+1
elementi dati in input
. Inoltre, crea una lista di valori Booleani (quindi vero o falso) ed applica l’algoritmo ricorsivamente. Facendo ciò, tutti i valori primi vengono contrassegnati come veri. Verrà poi presa la loro posizione nella lista per ricavare il numero primo, così da poterlo inserire nella lista numeri_primi
e stamparlo a schermo.
Nell’esempio, abbiamo chiesto di generare tutti i numeri primi fino a 10 con crivello(10)
e come puoi vedere in basso sono stati generati correttamente.
Ora ti farò vedere come funziona il debug in Pycharm. Per dire che il programma si dovrà fermare ad una determinata riga di codice, basta cliccare a sinistra della riga stessa (affianco al numero di riga) e poi avviare il debug (il simbolo di quella “pulce” in alto a destra). Come puoi vedere, così facendo, Pycharm blocca il programma prima di eseguire il secondo ciclo for
e ci mostra lo stato attuale del programma. Praticamente, crea un’istantanea del flusso d’esecuzione che, come avrai potuto vedere, è utilissima.
Altri IDE ed editor per Python
Oltre a Geany e Pycharm, esistono altri programmi per programmare in Python, meglio conosciuti come IDE. Ci sono poi anche editor di testo avanzati.
Per esperienza personale, per quanto riguarda IDE, posso consigliarti programmi come Eric, Eclipse + PyDe e Spyder. Invece, come editor di testo complessi, posso suggerirti Vim, VS code ed Atom. Sta a te trovare il miglior ambiente di sviluppo Python per le tue esigenze!
Shell di Python
Uno strumento molto utile, che è presente nell’installazione di Python, è proprio la shell di Python. Essa permette di provare porzioni di codice al volo ed è davvero utile quotidianamente.
Per avviare la shell di Python, basta aprire un terminale e digitare python
o python3
(nel caso lo avessi, anche python2.x
). Da lì, puoi quindi provare il tuo codice liberamente. È uno strumento molto utile durante l’apprendimento di Python, ma è altrettanto utile anche per provare blocchi di codice senza creare un nuovo file di testo in linguaggio Python.