35
Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina (Gruppo 2) Programmazione in Python

Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Embed Size (px)

Citation preview

Page 1: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Programmazione in PythonProf. Pasquale De Michele (Gruppo 1)

Prof. Raffaele Farina (Gruppo 2)

Programmazione in Python

Page 2: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Le slide fanno riferimento alla versione di Python 2.7.

Da Python 3 in poi, sono state introdotte diverse novità, che vengono comunque messe in evidenza in queste slide rispetto alla versione 2.7.

Precisazione

Programmazione in Python

Page 3: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Hello world!:

Primo programma in Python

Programmazione in Python

print “Hello world!”

Aggiungere commenti al codice:

#Questo e’ un commento!print “Hello world!”

L’istruzione print può essere fatta anche in un altro modo (usando ‘):print ‘L\’altezza e’ mezza bellezza’

ATTENZIONE: per evitare errori, sia nei commenti, sia nelle stampe, non usare mai caratteri accentati come:

è, é, à, ù, ò, ì.

Page 4: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Dalla versione 3 di Python l’istruzione print richiede l’uso delle parentesi tonde.

Di conseguenza, il programma visto nella precedente slide, per essere eseguito correttamente in Python 3 richiede di essere scritto come segue:

print in Python 3

Programmazione in Python

print (“Hello world!”)

Page 5: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Calcolo dell’area del triangolo rettangolo:

Un programma un po’ più complesso

Programmazione in Python

Tipi di istruzioni utilizzate:print – per la stampa a video (output);input – per la lettura da video (input);a = b*h/2 – per assegnare un valore alla variabile a.

Page 6: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

I programmi, quando sono in esecuzione, risiedono nella memoria principale (RAM).

Insieme ai programmi, nella memoria principale risiedono anche tutti i dati che essi manipolano.

La memoria RAM è organizzata in indirizzi del tipo:0000000…0000000000…001…1111111…111

Un po’ di ripasso: la memoria principale

Programmazione in Python

Page 7: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Di conseguenza, possiamo immaginare che se un programma chiede ad un utente di inserire due numeri per poterne calcolare un terzo, ognuno di questi sarà associato ad un indirizzo.

Riprendiamo il programma del triangolo rettangolo.Il programma chiede all’utente di inserire la base e l’altezza, al fine di poter calcolare l’area.Supponiamo che l’utente inserisca 4 per la base e 5 per l’altezza. Di conseguenza l’area sarà 10.

Dove vengono memorizzati questi dati?Potrebbe capitare che:

• All’indirizzo 0000000…000 sia salvato 4;• All’indirizzo 0000000…001 sia salvato 5;• All’indirizzo 0000000…010 sia salvato 10;

Un po’ di ripasso: la memoria principale

Programmazione in Python

Page 8: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Problema: per il programmatore può essere complicato dover ricordare l’indirizzo specifico in cui è stato salvato ciascun dato.

D’altra parte, nella vita di tutti i giorni possiamo trovare esempi che semplificano questa problematica:

La rubrica telefonica.

Variabili e costanti

Programmazione in Python

La rubrica telefonica mantiene le associazionitra numeri di telefono e i nomi delle persone a cui tali numeri di telefono corrispondono.

Allo stesso modo, possiamo pensare di associareun nome a ciascun dato utilizzato nel programma.

A seconda del fatto che questi dati possano omeno essere modificati, distingueremo variabilie costanti.

Page 9: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Se un dato non deve mai essere modificato (il valore ad esso associato non cambia), allora definiremo una costante.

Esempio: PI_GRECO = 3.14

N.B.: le costanti possono essere definite solo dal programmatore all’interno del codice del programma; l’utente non potrà inserire nessuna costante.

Se, invece, un dato può essere modificato (deve essere calcolato, inserito dall’utente o cambiato in corso d’opera il suo valore, allora definiremo una variabile.

Esempio:• b per la base;• h per l’altezza;• a per l’area.

Variabili e costanti

Programmazione in Python

Page 10: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Le variabili possono essere di vario tipo.

Possiamo distinguere tra variabili semplici e variabili complesse.

Le variabili semplici sono messe a disposizione dal linguaggio di programmazione. Nel caso del Python sono:

Variabili intere (che possono contenere numeri interi):• a = -3

Variabili reali (che possono contenere numeri reali):• b = -7.4

Variabili stringhe (sequenze di caratteri alfa-numerici)• c = “N76000000”

Tipi di variabili

Programmazione in Python

Page 11: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Un esempio di variabili complesse sono gli array.

Un array raggruppa, mediante un unico nome, un insieme omogeneo (dello stesso tipo di variabili).

Esempio: a = [1, 2, 3, 4]

Per accedere ad un singolo dato contenuto in un array si fa riferimento alla sua posizione (partendo dalla prima posizione 0). Di conseguenza:

In a[0] avremo 1.In a[1] avremo 2.In a[2] avremo 3.In a[3] avremo 4.

Tipi di variabili

Programmazione in Python

Page 12: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Per leggere un dato inserito dall’utente in Python su utilizza l’istruzione input().Esempio: a = input(“Inserire a”)In Python 2.7, tale istruzione assegna alla variabile il tipo inserito:

Se si inserisce “3”, allora a è di tipo intero.Se si inserisce “3.0”, allora a è di tipo reale.Se si inserisce “Ciao”, allora a è di tipo stringa.

In Python 3.4, tale istruzione assegna alla variabile sempre il tipo stringa. Di conseguenza è necessaria una conversione, affinché si possa gestire il tipo di variabile desiderata:

Se si desidera un intero, aggiungere a = int(a)Se si desidera un reale, aggiungere a = float(a)

La cosa può essere utile anche in Python 2.7, quando si desidera che le variabili siano sempre dello stesso tipo, ad esempio reale. Di conseguenza, anche se si inserisse “3”, con la conversione, la variabile a diventerebbe di tipo reale.

Lettura con input() in Python 2.7 e 3.4

Programmazione in Python

Page 13: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Talvolta può essere utile valutare il contenuto di una o più variabili al fine di poter stabilire quale sequenza di istruzioni svolgere a seconda dei casi.

Costrutto condizionale (di selezione) IF - ELSE

Programmazione in Python

Page 14: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Vediamo un esempio concreto:Vogliamo valutare se il valore contenuto nella variabile a sia maggiore di 0 oppure no.

Costrutto condizionale (di selezione) IF - ELSE

Programmazione in Python

ATTENZIONE – Regole di indentazione:Le istruzioni interne all’IF devono essere spostate di almeno uno spazio (o carattere di tabulazione) verso destra rispetto all’IF.Lo stesso vale per l’ELSE.

Page 15: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Nell’esempio precedente abbiamo valutato due condizioni:a > 0 e la sua negazione (else) a <= 0.

Come potremmo gestire più di due condizioni da controllare?

Consideriamo un altro esempio:Vogliamo valutare se il valore contenuto nella variabile a sia maggiore, minore o uguale rispetto a 0 (3 condizioni).

Costrutto condizionale (di selezione) IF - ELSE

Programmazione in Python

Page 16: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Nell’esempio precedente abbiamo valutato tre condizioni:a > 0 (if)a < 0 (elif)a = 0 (else) come negazione delle due precedenti.

Costrutto condizionale (di selezione) IF - ELSE

Programmazione in Python

Page 17: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Un’altra situazione tipica per un programmatore è avere a che fare con istruzioni che si ripetono più volte.

In questo caso possiamo utilizzare due costrutti che ci permettono di ripetere una sequenza di istruzioni per un certo numero fissato di volte o finché risulta vera una certa condizione.

Costrutti iterativi FOR e WHILE

Programmazione in Python

Page 18: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Un esempio del costrutto FOR in Python:

Il ciclo FOR

Programmazione in Python

In questo caso abbiamo un gruppo di istruzioni che deve essere ripetuto N = 10 volte.

Di conseguenza abbiamo fissato intervallo [1, 10] in cui variare.

Tale intervallo viene espresso attraverso l’istruzione range(1, N+1) che permette all’indice i di variare tra 1 ed N (escluso l’estremo superiore N+1).

Page 19: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Esempio: leggere 10 numeri e per ogni numero inserito stamparne il doppio.

Il ciclo FOR

Programmazione in Python

ATTENZIONE – Regole di indentazione:Le istruzioni interne al FOR devono essere spostate di almeno uno spazio (o carattere di tabulazione) verso destra rispetto al FOR.Tutto ciò che viene scritto “allineato” col FOR (o verso sinistra) viene considerato non appartenente al ciclo FOR.

Page 20: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Un esempio del costrutto WHILE in Python:

Il ciclo WHILE

Programmazione in Python

In questo caso abbiamo un gruppo di istruzioni che deve essere ripetuto finché risulta soddisfatta una certa condizione.

Di conseguenza, non sappiamo precisamente quante volte dovremo ripetere la sequenza di istruzioni contenuta nel ciclo WHILE.

Page 21: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Esempio: leggere i numeri inseriti dall’utente finché non viene inserito il numero 0.

Il ciclo WHILE

Programmazione in Python

ATTENZIONE – Regole di indentazione:Valgono le stesse regole di indentazione del ciclo FOR.

Page 22: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

D’altra parte, ciò che può essere fatto con un ciclo FOR può essere tranquillamente fatto con un ciclo WHILE.

Di conseguenza consideriamo il precedente programma scritto per il ciclo FOR e vediamo come implementarlo con il ciclo WHILE.

Il ciclo WHILE

Programmazione in Python

Page 23: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Consideriamo un esempio leggermente diverso: leggere 10 numeri e per ogni numero inserito stamparne il doppio; se l’utente inserisce il numero 0 il programma termina prima.

Il ciclo WHILE

Programmazione in Python

Page 24: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Sia il costrutto IF, sia i costrutti FOR e WHILE valutano delle condizioni che possono essere VERE o FALSE.

Di conseguenza ci si rifà alla logica booleana per stabilire se una o più condizioni sono vere o false.

In particolare, nel caso dell’IF e del WHILE può capitare che debbano essere valutate più condizioni contemporaneamente che possono quindi essere combinate in AND ed OR logici.

Come si è già visto per l’esempio precedente, Python utilizza l’espressionec1 and c2 per valutare due condizioni in AND.

Di conseguenza è facile immaginare che per l’OR logico l’espressione saràc1 or c2.

Per combinazioni più complesse è possibile utilizzare le parentesi tonde al fine di stabilire l’ordine di valutazione.

Esempio:(c1 or c2) and (c3 or c4)

Valutazione delle condizioni

Programmazione in Python

Page 25: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Vogliamo scrivere un programma che legga 5 variabili di tipo intero e ne restituisca la sommatoria. Inoltre se la sommatoria è pari le variabili pari inizialmente inserite devono essere poste a 0.

In questo caso è necessario memorizzare tutti i dati inseriti.

Gestire più variabili dello stesso tipo: array

Programmazione in Python

Page 26: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Prima soluzione: usare 5 variabili diverse.

Gestire più variabili dello stesso tipo: array

Programmazione in Python

Page 27: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Seconda soluzione (migliore): usare 1 array di 5 elementi.

Gestire più variabili dello stesso tipo: array

Programmazione in Python

Page 28: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Esistono vari modi per inizializzare un array in Python, tutti validi.

Inizializziamo a 0 tre array n1, n2 ed n3 da 15 elementi:n1 = [0] * 15 #Come nell’esempio appena viston2 = [0 for i in range(15)]import numpy as npn3 = np.zeros(15)

Array: inizializzazione

Programmazione in Python

Page 29: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

L’ultima modalità di inizializzazione di un array ricorre ad una funzione (zeros()) definita nella libreria numpy di Python.

La libreria numpy richiede di essere scaricata.

Le funzioni possono essere viste come parti di programmi già scritte che prendono in input dei parametri per restituire un risultato.

Le librerie contengono funzioni già scritte che semplificano la vita del programmatore.

Esempi di librerie Python oltre a numpy:math è la libreria delle funzioni matematiche:

• a = math.pow(b, e): la funzione potenza (pow()) assegna ad a il risultato dell’elevamento alla potenza e della base b.

• y = math.sqrt(x): la funzione radice quadrata (sqrt()) assegna a y il risultato della radice quadrata di x.

matplotlib.pyplot è una libreria per la creazione dei grafici.

Librerie e funzioni

Programmazione in Python

Page 30: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Python 2.7 per Mac:numpy: Linkmatplotlib: Link

Python 2.7 per Windows 64 bit

numpy: Linkmatplotlib: Link

Python 2.7 per Windows 32 bit

numpy: Linkmatplotlib: Link

Scaricare librerie per Python 2.7 e 3.4

Programmazione in Python

Python 3.4 per Mac:numpy: Linkmatplotlib: Link

Python 3.4 per Windows 64 bit

numpy: Linkmatplotlib: Link

Python 3.4 per Windows 32 bit

numpy: Linkmatplotlib: Link

Page 31: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Per Mac e Windows, seguire l’installazione grafica.Per Linux

con distribuzioni Debian/Ubuntu:1. Aprire il terminale e digitare

sudo apt-get install python-numpy (premi INVIO)2. Inserire la password (non compaiono pallini ma state scrivendo

ugualmente), premere INVIO.3. Attendere la fine dell’installazione.

con distribuzioni Fedora/RedHat:1. Aprire il terminale e digitare

sudo yum install python-numpy (premi INVIO)2. Inserire la password (non compaiono pallini ma state scrivendo

ugualmente), premere INVIO.3. Attendere la fine dell’installazione.

Installare la libreria numpy

Programmazione in Python

Page 32: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

• Per utenti Windows, seguire l’installazione grafica.• Per utenti Mac, dopo aver scaricato il file matplotlib relativo alla

vostra versione di Python:1. Aprire il terminale e digitare

sudo pip3 install wheel (premi INVIO).2. Vi verrà richiesta la vostra password, quindi digitatela.3. Finita questa installazione, spostatevi nella cartella Downloads digitando

nel terminale:cd Downloads (premi INVIO) a. Per Python 2.7 digitare (vi verrà richiesta la vostra password)

sudo pip3 install matplotlib-1.4.2-cp27-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (premi INVIO).

b. Per Python 3.4 digitare (vi verrà richiesta la vostra password)sudo pip3 install matplotlib-1.4.2-cp33-cp33m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (premi INVIO).

Installare la libreria matplotlib

Programmazione in Python

Page 33: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Per utenti Linuxcon distribuzioni Debian/Ubuntu:

1. Aprire il terminale e digitaresudo apt-get install python-matplotlib (premi INVIO)

2. Inserire la password (non compaiono pallini ma state scrivendo ugualmente), premere INVIO.

3. Attendere la fine dell’installazione.

con distribuzioni Fedora/RedHat:1. Aprire il terminale e digitare

sudo yum install python-matplotlib (premi INVIO)2. Inserire la password (non compaiono pallini ma state scrivendo

ugualmente), premere INVIO.3. Attendere la fine dell’installazione.

Installare la libreria matplotlib

Programmazione in Python

Page 34: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Per usare le funzioni definite in determinate librerie di Python è necessario importare tali librerie nel programma.

La sintassi è la seguente: import nome_libreria

Talvolta, per abbreviare il nome della libreria si definisce un alias tramite la parola chiava as dopo il nome della libreria, seguita dall’alias: import nome_libreria as alias

Vediamo alcuni esempi:import math as mimport numpy as npimport matplotlib.pyplot as plt

In questo modo, se volessimo utilizzare la funzione pow() della liberia math, potremmo scrivere direttamente m.pow() anziché math.pow().

Importare librerie in Python

Programmazione in Python

Page 35: Prof. Raffaele Farina (Gruppo 1) Prof. Pasquale De Michele (Gruppo 2) Programmazione in Python Prof. Pasquale De Michele (Gruppo 1) Prof. Raffaele Farina

Prof. Raffaele Farina (Gruppo 1)Prof. Pasquale De Michele (Gruppo 2)

Supponiamo di voler rappresentare graficamente (in un sistema di assi cartesiani) i valori contenuti in un array a di N elementi.

Immaginiamo che i valori contenuti nell’array siano quelli relativi all’asse y ed i valori che indicano le posizioni in cui si trovano tali valori (da 0 ad N-1) siano relativi all’asse x.

Grafici in Python

Programmazione in Python