Programmazione Python 3- Lezione 1

Introduzione

Python è un moderno linguaggio di programmazione open source che oggi è uno dei più consolidati al mondo in tutti gli ambiti di sviluppo software.
Supporta sia la programmazione procedurale che la programmazione ad oggetti (dove da il meglio di se), e grazie ad una comunità di sviluppatori grandissima in tutto il mondo possiede innumerevoli funzionalità aggiuntive.
E’ un linguaggio interpretato e le sue prestazioni sono molto elevate grazie alla scrittura del linguaggio mediante programmi in C++ (molte delle funzioni e librerie python sono scritte in linguaggio C++).

Argomenti

Cos’è Python

E’ un linguaggio di Programmazione Pseudocompilato; un interprete analizza il codice sorgente e se la sintassi è corrette lo esegue;
E’ un linguaggio ad alto livello che utilizza il paradigma procedurale, o della programmazione ad oggetti;
Possiede una sintassi semplice rispetto a linguaggi come il C/C++ e Java
Utilizza l’indentazione del programma per riconoscere i blocchi funzionali (corpo ciclo, blocchi di selezione;
Dispone di diverse librerie per moltissimi ambiti: ad esemepio librerie per il calcolo scientifico, programmazione concorrente, per la grafica 2D e 3D, per la programmazione in rete, ecc.
La versione attuale di Python è la 3.9 è un linguaggio multi-piattaforma supporta tutti i sistemi operativi per Desktop e Server e anche dispositivi mobile.
La potenza di Python sta nel fatto che è possibile estendere le funzionalità per moltissimi campi dall’ambito scientifico a quello economico passando per tutti gli algoritmi di Machine Learning.

I dati in Python

Le variabili sono dichiarate in modo implicito, assegnando un valore il linguaggio riconosce il tipo ad esempio:
nome=‘’Andrea’’ dichiara una stringa
stipendio=1350

dichiara una variabile intera
sconto=0.30

dichiara una variabile di tipo reale
risposta=‘y’

dichiara una variabile di tipo carattere
Le costanti come tipologia di dato in Python non sono utilizzate, conviene definire una variabile con lettere MAIUSCOLE assegnarle un valore.
Risulta evidente che nell’utilizzare le variabili i Python conviene definire le variabili con dei valori iniziali. Tale pratica si chiama inizializzazione delle

Istruzioni di input / output

Python lavora su Console detta anche linea di comando o permette attraverso numerosi Toolkit grafici di realizzare delle interfacce grafiche per la gestione dell’interazione con l’utente. In quest’ultimo caso per creare delle interfacce Grafiche occorre conoscere i fondamenti della programmazione ad oggetti. Le istruzioni di Input e Output n Python sono:
input e print;
La sintassi dell’istruzione input prevede una variabile a sinistra secondo la sintassi:
variabile=input(messaggio)


Tutti gli input in Python sono in formato stringa.

L’istruzione print ha la forma
print(messaggio)
All’interno del messaggio è possibile utilizzare le sequenze di Escape \n, \t, ecc
Tutto quello che viene inserito in Input è una stringa così come quello che viene stampato in Output.
Un primo esempio di script
messaggio=input(“digita saluto”)
print(saluto)

Il casting dell’input

Per interpretare i dati occorre effettuare il cast sull’input;
Le parole chiave sono float, long,, int per dati numerici
ad esempio
x=int(input(‘’ inserisci un numero ’’)
p=float(‘’inserisci un numero reale’’)
L’interprete permette la definizione di variabili in modo implicito durante la lettura dei dati, non è obbligatorio dichiarare una variabile se ancora non utilizzata.


Una variabile può essere inizializzata anche ad un valore None ovvero non possiede valore,

Le stringhe e i caratteri

L’input delle stringhe deve avvenire fra virgolette. L’input dei caratteri deve avvenire fra apici.


La concatenazione avviene con il segno +.
Ad esempio nome=‘’Mario’’ e
cognome=‘’Rossi’’
cognome+’ ‘+nome
il risultato è:
‘Mario Rossi’
Alcune funzioni per le stringhe:
-> len(stringa) lunghezza stringa
-> stringa[inizio:fine] sottostringa da indice inizio a indice fine
-> stringa[k] con k compreso fra 0 e len(stringa) carattere di posizione k

Attenzione le stringhe hanno come posizione del primo elemento 0

La parola chiave “in” di Python permette di verificare se una sotto stringa è presente nella stringa ad esempio x=‘’Mario Rossi’’ occorre un ciclo for (vedere più avanti)

Struttura di un programma Python

Il file sorgente deve avere estensione py;
E’ possibile scrivere il programma da Linea di comando in modo interattivo
Nei blocchi funzionali selezione, cicli occorrono i due punti al termine dell’istruzione che apre il blocco;
Ad esempio (inoltre è obbligatoria l’indentazione con TAB o Spazio)
if (a>b):
max=a
else:
max=b

La libreria math

Per alcune funzioni matematiche anche scientifiche è possibile utilizzare la libreria math. Per utilizzare la libreria math in un programma Python è possibile utilizzare la clausola import math. Le funzioni principali presenti sono:
funzioni trigonometriche, esponenziali e logartimiche, e altre ancora. Per visualizzare l’elenco completo delle funzioni è possibile impartire il comando dir(math) e verrà visualizzato l’elenco delle funzioni disponibili nella libreria math.
In tabella sono riportate quelle di maggior uso.

La tabella riassume la sintassi di alcune funzioni con i relativi esempi.
Come esempio scrivere un programma che calcola la media di tre numeri.
Ecco il listato:


media=0
a=float(input(‘inserisci il primo numero\n’))
b=float(input(‘inserisci il secondo numero\n’))
c=float(input(‘inserisci il terzo numero’))
media=(a+b+c)/3
print(‘La media è:\t’)
print(media)

Il listato è molto semplice sono letti tre numeri reali da tastiera è calcolata la media e viene stampata la media.

Strutture fondamentali della programmazione in Python

Python con alcune differenze con altri linguaggi di programmazione possiede dei costrutti fondamentali per la programmazione quali le istruzioni di selezione, e le istruzioni di ciclo. Non esiste in Python lo switch .. case come nel C++ e il ciclo do .. while che è costruito come struttura derivata da quelle esistenti in Python.

La struttura di selezione

Struttura di selezione semplice.

In codice Python 3:
if condizione :
istruzione 1
else:
istruzione 2
ricordarsi che dopo ogni blocco occorre inserire un “TAB” o uno spazio.

Strutture condizionali nidificate

E’ possibile combinare più istruzioni if else per ottenere delle strutture di selezione nidificate o concatenate per controllare il verificarsi o meno di più condizioni.
Il frammento non unico che rappresenta queste strutture è riprotato in figura.

Sono rappresentate in flowchart le condizioni concatenate o nidificate.

La relativa traduzione in codice Python:

if
condizione:
if condizione 2:
istruzione 1
else:
istruzione 2
else:
istruzione 3
La combinazione di condizioni dipende solo dalla soluzione del problema.

Strutture cicliche

Al crescere della complessità del problema la soluzione può presentare parti di soluzioni che devono essere ripetute per rendere il programma efficiente e non puramente sequenziale. Se ad esempio occorre sommare cento numeri è naturale utilizzare una struttura ciclica per eseguire in modo iterativo la somma di questi numeri.
Pertanto le strutture cicliche come in ogni linguaggio di programmazione sono distinte in strutture cicliche a ripetizione definita e indefinita. Nel primo caso la ripetizione è svolta un numero prefissato di volte, nel secondo caso il numero delle ripetizioni è determinato da una condizione. Il blocco di istruzioni da ripetere è chiamato “corpo” del ciclo.

Per continuare a leggere questo articolo devi sottoscrivere un abbonamento
Puoi abbonarti al link al menù principale o cliccando sul link Abbonati Ora!

Video correlati


Video 2 – Le strutture cicliche in Python 3

Video Lezione i Sotto programmi in Python 3