Archive for febbraio, 2007

Lezione16-Creare eseguibili…

Per distribuire le nostre applicazioni il più delle volte risulta “scomodo” dare il file .py anche perchè per poter funzionare l’utente deve aver installato python.
Se specialmente l’utente a cui dobbiamo dare a nostra applicazione usa Windows è più comodo passargli un file .exe
Per creare un eseguibile(exe) scarichiamo il modulo py2exe.
una volta installato apriamo il programma che dobbiamo convertire in eseguibileed all’inizio del file aggiungiamo queste righe:

from distutils.core import setup
import py2exe
setup(console=[‘NomeFile.py’])

salviamo il nostro file con il nome setup.py e dal terminale(per utenti unix) o da cmd.exe(per utenti Windows) ci portiamo nella directory dove si trova il nostro file e scriviamo:

python setup.py py2exe

compariranno un po di scritte ed alla fine se abbiamo fatto tutto correttamente dentro la directory del nostro file dovremmo avere due cartelle build e dist ,il nostro eseguibile si troverà all’interno della cartella dist.
Per testare il funzionamento dell’eseguibile appena creato sempre da terminale ci portiamo dentro la cartella dist e digitiamo:

NomeEseguibile.exe

Se invece vogliamo creare dei veri e propri installer con installazione guidata possiamo usare NSIS oppure InnoSetup.

Annunci

febbraio 21, 2007 at 5:32 pm 17 commenti

aggiunta nuova sezione…

E’ stata aggiunta una nuova pagina che riguarda la programmazione in python per i dispositivi mobili (s60) gli aggiornamenti li trovate nella side-bar a destra.

febbraio 20, 2007 at 12:54 pm Lascia un commento

Lezione15-Le classi in python…

Dopo aver introdotto i punti principali della programmazione ad oggetti,vediamo come implementarla in python tramite l’utilizzo delle classi.

Per creare una classe in python scriviamo:

class NomeDellaClasse : se è una “classe madre”(cioè non deriva da altre classi)

class NomeDellaClasse(NomeClasseMadre): se è una “classe figlia”

dopo la dichiarazione del nome della classe,inizializzaremo le variabili(i dati membro) che utilizzaremo nella classe,ed infine sotto i metodi(funzioni) della classe.

Ottenendo una struttura di questo tipo:

class NomeClasse:

{variabili}

{metodi}

oppure

class NomeClasse(ClasseMadre):

{variabili}

{metodi}

Per visualizzare meglio questi concetti passiamo subito ad un’esempio, implementando l’esempio dei computer di un ufficio che abbiamo visto nella lezione precedente:

17

Adesso scriviamo un’altro esempio dove la classe computer è la classe madre :

18

 

febbraio 8, 2007 at 2:24 pm 11 commenti

Lezione 14-Introduzione alla programmazione ad oggetti…

Python come i linguaggi ibridi(tipo C++) ci permette di implementare sia la programmazione procedurale che quella ad oggetti.

Quando scriviamo un programma con la programmazione procedurale ci serviamo di funzioni,procedure e strutture dati come liste,dizionari,etc..se decidiamo di modificare una parte del programma probabilmente dovremmo apportare delle modifiche strutturali ad una buona parte di esso perchè funzioni.

La programmazione ad oggetti invece ci permette un riutilizzo di codice senza apportare alcuna modifica,vediamo in che senso.

Un programma scritto tramite la programmazione orientata ad oggetti,è costituito da un’insieme di oggetti che interagiscono tra loro ognuno avente una propria struttura dati,siccome ogni oggetto funziona in “modo autonomo”,la programmazione ad oggetti si presta per lo sviluppo di software in team,in quanto ognuno può sviluppare un componente(oggetto)del programma senza preoccuparsi della struttura degli altri oggetti che ne faranno parte.

Per creare un’oggetto dobbiamo definire la classe d’appartenenza,definendo le funzioni dell’oggetto(metodi)e le variabili contenute in esso.

Supponiamo di volere scrivere un’archivio dei computer di un’uffico:

variabili:

 nome computer

 sistema operativo

 ram

 hard disk

metodi:

  modifica sistema operativo

 modifica ram

 modifica hard disk

Una delle funzioni più importanti delle classi è l’ereditarietà , cioè se già abbiamo una classe con dei metodi che ci possono servire per un’applicazione possiamo prendere la classe che abbiamo già e creare una classe figlia che ha gli stessi metodi della classe madre a cui poi possiamo aggiungere altri metodi.

Ad esempio supponiamo che la classe madre sia la classe computer scritta sopra ,creiamo un’altra classe (chiamata computer2)che oltre ad avere le variabili ed i metodi sopra citati abbia:

 

variabili:

processore

scheda video

scheda audio

metodi:

cambia scheda video

febbraio 7, 2007 at 10:38 pm Lascia un commento

Lezione 13-I Moduli…

Quando i programmi diventano più grossi non è buona scelta lasciare tutto su un’unico file,in quanto la gestione risulta più complicata.

Allora in questi casi conviene dividere il programma in sotto-programmi salvati in script e richiamarli nel corpo principale del nostro programma.Questi script esterni vengo chiamati moduli,già di essi ne esistono moltissimi per risolvere svariati problemi.

 

La sintassi per richiamarlo all’interno del nostro programma è:

import NomeModulo

per sapere i metodi che ha un determinato modulo direttamente dalla consolle interattiva scriviamo:

import NomeModulo

dir(NomeModulo)

ad esempio:

>>import time

>>dir(time)

[‘__doc__’, ‘__name__’, ‘accept2dyear’, ‘altzone’, ‘asctime’, ‘clock’, ‘ctime’, ‘daylight’, ‘gmtime’, ‘localtime’, ‘mktime’, ‘sleep’, ‘strftime’, ‘strptime’, ‘struct_time’, ‘time’, ‘timezone’, ‘tzname’]

usando il comando import,in pratica importiamo nel nostro programma tutte le funzioni(quelle elencate tramite il comando dir),e per richiamarne una dobbiamo utilizzare la sintassi:

NomeModulo.NomeFunzione

ad esempio se vogliamo stampare che giorno è oggi basta scrivere:

>>>import time

>>>lista=time.localtime()  #ci crea una lista con giorno,mese,anno e l’orario

 

>>>giorno=lista[2]    #estrapolo dalla lista il valore del giorno

 

se invece vogliamo importare nel nostro programma solo una funzione di un determinato modulo scriviamo:

from NomeModulo import NomeFunzione

scriviamo così:

>>>from time import daylight

>>>daylight

In questo caso dato che abbiamo importato solo una specifica funzione del modulo per richiamarla basta solo il nome della funzione.

Come potete capire non è possibile presentare tutti i moduli che sono disponibili perchè sono in numero elevato,per trovare l’elenco completo vi rimando all’indice ufficiale:http://docs.python.org/modindex.html

febbraio 1, 2007 at 4:28 pm 11 commenti


IL FORUM E’ ATTIVO..!!!

pythonlab adesso ha il suo forum all'indirizzo: Pythonlab-forum

Python s60..

8.MODULO E32 21-03-07 Ultimo aggiornamento

Blog Stats

  • 88,295 hits

Archivi

Aggiunta chat…