Programmiamo con Python Portable!

Negli ultimi temi in rete si stanno diffondendo sempre di più le applicazioni portatili, che rappresentano dei veri e propri software completi (quasi sempre open source o freeware), appositamente impacchettati e preparati per essere eseguiti senza installazione da un dispositivo di archiviazione portatile, quale ad esempio una comunissima pendrive.
Il fattore chiave di queste “portable apps” (come vengono definite in linguaggio internazionale) è la completa portabilità appunto, data soprattutto dalla certezza che tutti i files necessari all’esecuzione del programma risiedono all’interno della stessa cartella, anziché diffondersi a macchia d’olio nelle cartelle di Windows, in quelle dei documenti e così via.

I siti che posso indicare tra i più validi che contengono un’ampia collezione di applicazioni portatili tutte da scaricare liberamente sono PortableApps e WinPenPack.

 

Non poteva mancare il linguaggio di programmazione a scripting Python, che si è diffuso moltissimo negli ultimi anni, raggiungendo una buona fama mondiale (basti pensare che Google, colosso del Web, lo impiega largamente nei suoi progetti). Vediamo una breve introduzione, per capirne le caratteristiche principali.

Per prima cosa è un linguaggio open source, libero, cosa assai importante. Vuol dire che tutti i suoi sorgenti sono visibili a chiunque e, oltre questo, è liberamente modificabile ed adattabile alle proprie esigenze.

Inoltre, si tratta di un linguaggio interpretato, cioé manca del tutto la fase della compilazione (che trasforma il progetto da un file sorgente, cioé un file di testo, in un file eseguibile dal sistema oerativo). Questo permette, oltre alla possibilità di vedere con un semplice editor di testo come è strutturato il programma (scoprendo quindi eventuali falle/bug/azioni maligne), di avere la certezza che lo stesso script possa girare su tutti i sistemi operativi che hanno il suo interprete installato. Per fare un paragone: tutte le applicazioni scritte in C# possono girare su tutti i sistemi operativi Windows,  allo stesso e identico modo, ad eccezione che abbiano installato le librerie .NET Framework.

Esiste un sito ufficiale che si è occupato di impacchettare e ospitare questo linguaggio di programmazione per essere eseguito direttamente da una normalissima chiave usb.
Contiene, oltre al linguaggio python vero e proprio, diversi moduli aggiuntivi che permettono di svolgere numerosissime funzioni, tra cui il fondamentale wxPython, che consente di fornire al programma vogliamo realizzare un’interfaccia grafica con cui l’utente può interagire.

Per prima cosa occorre portarsi nel sito ufficiale: http://www.portablepython.com.

Nel riquadro di sinistra sono presenti i collegamenti a due versioni: all’apparenza sembrerebbe la scelta migliore scaricarsi la versione 3, però in realtà ci sono delle differenze che includono una breve riflessione dell’utente prima del download:

  • Python 2.7: versione affermata e diffusissima ovunque, moltissimi moduli sono stati scritti per questa versione e quindi sono compatibili
  • Python 3.2: non ha niente a che vedere con la versione 2: è stato completamente riscritto e questo può portare ad incompatibilità con moduli aggiuntivi, che sono compatibili solo con la 2 (per ora)

Una volta effettuata questa considerazione (io ho scaricato la 2) cliccate sul link per il download. E’ possibile scaricarlo via torrent oppure in via classica, dal browser.

Ad esempio, un link per il download della versione 2.7 (mirror dal Belgio) è questo.

 

Una volta scaricato è sufficiente far partire il processo di installazione guidata cliccando due volte sull’icona dell’applicazione: verrà chiesto di specificare in quale posizione si vuole installare il prodotto e quali funzionalità aggiungerci (aggiungendo tutte le funzioni si richiede circa 200MB di spazio libero sulla pendrive).

Terminato il processo di installazione portarsi nella cartella nella quale è stato installato il programma ed avviare il file PyScripter-Portable.exe per avviare l’editor di sviluppo di Python.

 

A questo punto ci si ritrova davanti un vero e proprio (e massiccio) programma di sviluppo, a cui non manca proprio niente rispetto a un Visual Studio (per esempio). Contiene la sezione principale nella quale è presente il codice modificabile, una sezione per l’output (i messaggi che manda l’applicazione) e un ottimo sistema di debug che avvisa il programmatore (durante l’esecuzione dello script) di eventuali errori nel programma.

Schermata che appare avviando l’applicazione

 

Arrivati a questo punto si può scrivere il primo script di prova, tenendo in mente che in Python non si usano le parentesi, ma si controllano i blocchi di codice solo ed esclusivamente tramite l’indentazione.

# Importo la libreria wxPython
import wx

# Definisco la MessageBox
def Info(parent, message, caption = 'Insert program title'):
    dlg = wx.MessageDialog(parent, message, caption, wx.OK | wx.ICON_INFORMATION)
    dlg.ShowModal()
    dlg.Destroy()

# Creo l'oggetto applicazione di wxPython
app = wx.App()
# Mostro il messaggio tramite una MessageBox
Info(None, "Questo e' il mio primo programma!", "Evviva")
app.MainLoop()

E’ sufficiente copiare e incollare questo codice all’interno della finestra del codice e poi premere F9 per eseguirlo.
Ecco il primo script! 😀

Per la documentazione sul linguaggio di programmazione python riferirsi a python.org (sito ufficiale, in inglese) oppure a python.it (comunità italiana).

Al prossimo topic! 😀

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.