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

Annunci

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

Lezione12-Le stringhe…

Oggi impariamo ad usare al meglio le stringhe che come ogni altro elemento in Python è in oggetto,quindi ha dei metodi che ne facilitano l’utilizzo.

I caratteri della stringa vengono indicizzati da 0 ad (n-1).

-Lunghezza:
supponiamo di avere una stringa(frase):

frase =”supercalifragilissichespiralitoso”

se vogliamo sapere la lunghezza della stringa,basta scrivere

>>>len(frase)

>>>33

-Lo slicing:

Tramite lo slicing possiamo estrapolare dalla stringa una parte di essa,ad esempio

>>>frase[:10] #stampa i primi 10 caratteri

>>>supercalif

>>>frase[-10:] #stampa gli ultimi 10 caratteri

>>>piralitoso

>>>frase[2:8] #stampa dal terzo carattere al numero 8

>>>percal

>>>frase[::10] #stampa ogni 10 caratteri

>>>srh

gennaio 30, 2007 at 12:51 pm 1 commento

Lezione11-Le eccezioni…

A volte capita che durante l’esecuzione di una applicazione si verifica una certa condizione che il programma non sa gestire,generando un’errore(eccezione),se l’errore già lo avevamo previsto lo gestire tramite le “parole chiave” try e except .

Vediamo un’esempio
Supponiamo di voler dividere un numero per zero:

15

 

Otteniamo un errore chiamato ZeroDivisionError,quindi,sapendo che se dividiamo un numero per zero generiamo l’errore ZeroDivisionError,scriviamo:

16

 

cioè prova(try) ad eseguire l’operazione risultato,se genera l’errore ZeroDivisionError(except ZeroDivisionError)allora stampa “Non puoi dividere un numero per zero!”

Si possono gestire più errori mettendo per ogni errore except e il nome dell’errore.

 

 

 

gennaio 28, 2007 at 4:51 pm 7 commenti

Lezione 10-I Set…

Presentiamo un’ulteriore struttura dati,i set.

Un set lo si può indicare come un’insieme di elementi senza duplicati,(possiamo scrivere lo stesso elemento quante volte vogliamo,ma all’interno del set comparirà solo una volta),dove valgono le comuni proprietà dell’insiemistica(unione,intersezione,differenza e differenza simmetrica).

14

Ricapitolando:

unione= A | B

intersezione= A & B

differenza= A – B

differenza simmetrica = A^B

Naturalmente vi è anche la possibilità di aggiungere o cancellare un’elemento dal set :

aggiungere elemento: NomeSet.add(elemento)

cancellare elemento: NomeSet.remove(elemento)

cancella tutto il set: NomeSet.clear()

elemento random del set: NomeSet.pop()

gennaio 26, 2007 at 11:45 am 2 commenti

Esercizio sulla gestione dei files…

Nel forum ho postato un’esercizio che riguarda la gestione dei file,in paricolar modo per il salvataggio e il caricamento dei dati.Esercizio

gennaio 25, 2007 at 10:03 am Lascia un commento

Lezione09-I Files…

A volte può essere utile richiamare dalla nostra applicazione dei files esterni contenenti degli input per il nostro programma,oppure se vogliamo salvare i risultati della nostra applicazione,per richiamarli in seguito.

Python ci permette di poter aprire,chiudere,leggere,scrivere sia files di testo che files binari.

Ad esempio supponiamo di avere nella stessa cartella della nostra applicazione un file vuoto chiamato Input.txt” .

Se vogliamo scrivere all’ interno del nostro file scriveremo:

prima apriamo il file nome_variabile=open(‘miofile.txt’,’w’)
la w sta per write , se lo dovevamo solo leggere scrivevamo r (read)

scriviamo:

nome_variabile.write(‘ciao’)

chiudiamo il file:

nome_variabile.close

gennaio 22, 2007 at 1:19 pm 1 commento

Articoli meno recenti Articoli più recenti


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…