Anteprima
Vedrai una selezione di 1 pagina su 5
Informatica - Appunti funzioni 1 Pag. 1
1 su 5
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

INFO 19.11.20 FUNZIONI

Eseguire tante volte un blocco di istruzioni -> for o while con n volte

➢ Funzione: esegue una sequenza di istruzioni -> include un altro programma

FUNZIONE: permette di costruire una complessità con tante istruzioni???

- Built in

- Definite dall’autore

FUNZIONE = SCATOLA NERA, BLACK BOX

- oggetto prodotto da una valutazione della funzione

- Primo argomento è arrotondato alle prime due cifre

dopo la virgola

- Contratto tra la funzione e chi chiama la funzione

- Invocazione/chiamata della funzione

- Passo gli argomenti alla funzione e mi ritorna il

valore di ritorno dalla funzione

➔ Come la esegue? BHO

➔ Parametri attuali o argomenti (2 e 6.54234) e valore di ritorno (6.54)

MODELLO DI ESECUZIONE

➢ Chiamante: invoca la funzione round() passando due argomenti -> istruzioni che diamo

➢ Chiamato: funzione round() che svolge altre istruzioni (es 5 istruzioi che corrispondono alla

funzione round)

o Funzione = sorta di sottoprogramma e ha un valore di ritorno

➢ Ritorna al chiamante il valore di ritorno

➢ il valore di ritorno viene associata alla variabile

➢ Noi conosciamo solo l’interfaccia della funzione, non la sua

implementazione

o Siamo estranei alle istruzioni svolte dalla funzione -> astrazione

o Non sappiamo che istruzioni svolge per giungere al valore di ritorno,

ma non ci interessa

FUNZIONI DEI LINGUAGGI DI PROGRAMMAZIONE DI ALTO LIVELLO

➢ Funz definita da un nome simbolico e una sequenza di istruzioni associate al nome simbolico

o In phyton -> funzione è un OGGETTO identificato da un nome

➢ Nome simbolico -> qualunque (come variabili e con stesse limitazioni)

➢ Definizione della funz e chiamata della funz:

o 1. Costruisco una nuova funzione -> creo un’interfaccia e con una determinata

semantica

o 2. Invocare una funzione

FUNZIONI BUILT IN

- PHYTON ha una libreria di funzioni enorme -> x questo molto utilizzato

➢ Built in -> funzioni definite dal linguaggio di programmazione

➢ Funzioni definite dall’utente -> ‘personalizzate’

CHIAMATA A FUNZIONE BUILT-IN

➢ Round -> nome simbolico non c’entra con le istruzioni che va a svolgere la funzione

o Ma è molto meglio sceglierne uno che ricordi la sua funzionalità

➢ Per chiamare la funzione devo averla DEFINITA (come per le variabili)

Librerie di base: funzioni matematiche, per la generazione di numeri casuali

BUILT-IN PHYTON

- Input(arg) e print(+espr..) -> non ne conosciamo l’implementazione, IDC = BLACK BOX

- Len(stringa,lista,dizionario) -> lunghezza

- Abs(numero) -> valore assoluto

- Round(numero1, numero2) -> arrotondamento del num1 a cifre dec di num2

- Int(numero,stringa) -> num o strg in tipo intero

- Str(int, float)

- Float(num,stringa)

Differenza tra chiamata a funzioni builtin e ai metodi i un oggetto:

➢ Chiamata builin -> funz(arg)

➢ Chiamata met ogg -> ogg/var.nomemetodo(arg)

IN PHYTON TUTTO è UN OGGETTO:

➢ Oggetto:

o Insieme di dati

o Insieme di meta-dati

o Un insieme di funzioni proprie dell’oggetto -> metodi -> associati agli oggetti stessi

Es. metodo:

o Split -> val = x.split() ->

➢ Esistono diversi metodi per ogni tipo: Metodi -> propri

dell’oggetto stesso

Per le stringhe sono

tantissimi

➔ Help(nomeVar.metodo) -> descrizione del

metodo

➔ SPLIT:

o Ritorna una lista delle parole della

stringa in cui il separatore è uno

spazio

➢ Metodi copy() x dizionari e liste (gia visto)

o Utile per copiare un oggetto e copiarlo, lasciando inalterato l’originale

➢ potevo anche scrivere d1.copy()

SPLIT:

➢ Torna una lista i cui elementi sono le parole della stringa

➢ Posso decidere anche il separatore con cui dividere le parole

CHIAMATA A FUNZIONI:

- Alcune funzioni non sono automaticamente presenti in phyton ma devono essere importate

- FUNZIONI MATEMATICHE:

- Restituiscono un tipo di

Dato float

- FUNZIONI RANDOM:

PROBLEMA:

- Random() -> non ha agromenti -> la lista degli argomenti puo essre anche vuota

o Genera un num reale compreso tra [0,1)

- Se sono in phyton e chiamo random() ottengo errore, stesso per pi -> non tutte le funzioni

built.in sono disponibili immediatamente -> devono essere appunto importate

o Usare FROM-IMPORT

o Usate in coppia

FROM-IMPORT: deve essere usata prima della chiamata a funzioni della libreria

- nomeLibreria = nome simbolico all interno della quale ci sono altri nomi simbolici delle

funzioni -> nome simbolico della libreria contennte la funzione che si vuole

- nomeSimbolico = nome della funzione o costante numerica scelta

➔ Sintassi:

Dettagli
Publisher
A.A. 2019-2020
5 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher danyconti01 di informazioni apprese con la frequenza delle lezioni di Informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Politecnico di Milano o del prof Masarati Pierangelo.