Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Python - Linguaggio e Fondamenti, Appunti di Fondamenti di informatica

Breve spiegazione del linguaggio Python e delle sue principali caratteristiche

Tipologia: Appunti

2019/2020

Caricato il 26/10/2020

luigi-deca
luigi-deca 🇮🇹

4

(5)

2 documenti

1 / 53

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Corso di programmazione in Python – Lezione 1 - Neapolis Hacklab
Programmazione in Python – Lezione 1
HapPy Python
Corso di programmazione in Python
Lezione 1
a cura del
Neapolis Hacklab
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35

Anteprima parziale del testo

Scarica Python - Linguaggio e Fondamenti e più Appunti in PDF di Fondamenti di informatica solo su Docsity!

Programmazione in Python – Lezione 1 HapPy Python Corso di programmazione in Python Lezione 1 a cura del Neapolis Hacklab

Perchè un corso di Python? ● Uno dei modi per contribuire alla diffusione del software libero è, ovviamente, quello di sviluppare, sia programmando nuovi software che migliorando software esistenti ● Programmare però può sembrare troppo complicato a chi non ha mai sviluppato software ● In effetti la programmazione richiede studio ed esercizio ● Molti linguaggi sono difficili da imparare e richiedono una conoscenza approfondita dell'architettura dei computer

A chi è rivolto il corso? ● A chiunque voglia sviluppare software open ● A chi vuole scoprire un nuovo linguaggio ● A chi vuole riscoprire il piacere di programmare ● A chi vuole un linguaggio che gli permetta di concentrarsi maggiormente sulle esigenze che il software deve soddisfare più che al modo si svilupparle

Nota importante! A differenza di molti altri linguaggi Python unisce la facilità di sviluppo alla flessibilità, stabilità e velocità di esecuzione. Python è utilizzato oggi in moltissimi campi dalle applicazioni desktop allo sviluppo di application server, dalle applicazioni multimediali alla gestione di server. Python è un linguaggio detto General-Purpose ovvero adatto a svariati campi di applicazione

Cos'è Python? ● Gestione tipi dinamica e forte ● Gestione automatizzata della memoria (Garbage Collection) ● E' multi paradigma: permette la programmazione iterativa, object-oriented e funzionale.

Breve storia ● Concepito nel 1980 da Guido Van Rossum nel CWI (istituto di ricerca nazionale olandese) come successore del linguaggio ABC ● Nel 1991 viene rilasciato il codice della versione 0.9 con molte funzionalità ancora da sviluppare ● Nel 1994 viene rilasciata la 1.0 contenente la maggior parte delle funzionalità migliori di Python ancora presenti oggi

Utilizzi ● Web: Zope application server, YouTube, Google, Bittorrent ● Sicurezza: molti software che eseguono test di sicurezza sono scritti in Python ● Grafica 3D: Maya e Blender integrano Python per gli script di automazione ● Video game: molti OpenSource e commerciali integrano Python per programmare il comportamento dei vari elementi del gioco

Utilizzi ● Python è un componente standard nell'installazioni di FreeBSD, OpenBSD, NetBSD, Mac OSX, Ubuntu, ecc. ● Ubuntu lo utilizza per creare le interfacce grafiche di gestione ● Il software di installazione di Redhat linux e Fedora linux (chiamato Anaconda) è scritto interamente in Python ● Il package manager di gentoo (emerge) è scritto in Python. ● Ecc. ecc. ecc. ecc.

Gestione tipi di variabili ● Gestione dinamica : le variabili possono cambiare tipo nel corso dell'esecuzione del codice. Non viene quindi effettuato alcun controllo statico sul tipo di valore assegnato ad una variabile. ● Tipizzazione forte : le operazioni tra tipi di dati diversi devono essere specificate esplicitamente nel codice (casting). Non vengono effettuate conversioni automatiche dei tipi delle variabili.

Python Standard Library ● E' la libreria standard di Python che contiene moduli delle più svariate funzionalità: applicazioni web, interfacce grafiche, database, aritmetica, espressioni regolari, email, crittazione, xml, calendario, ecc. ● L'installazione di Python comprende sempre la libreria standard considerata elemento fondamentale: la cosidetta filosofia Batteries Included.

Estensione di Python ● L'architettura di Python è stata pensata per permettere una semplice estensione del linguaggio. E' possibile programmare moduli di Python in linguaggio C, C++, Java. Ciò permette di programmare parti dell'applicazione in un linguaggio più performante come il C per ottimizzare le prestazione del software. ● Python può essere utilizzato anche in modalità Embedded ovvero intergrato in altre applicazioni alle quali aggiunge un motore di scripting interno.

Finalmente Python ● Dopo questa panoramica su Python vediamo ora una riga di codice... rigorosamente un HelloWorld print "Hello world!" ● Ovviamente l'esecuzione di questa riga di codice mostra a schermo il testo Hello world!

Un altro semplice esempio ● raw_input attende un input da tastiera e lo restituisce quando viene premuto invio ● Se la variabile nome non è vuota viene visualizzato “Ciao nome ” ● Altrimenti da un altro messaggio nome = raw_input("Ciao, come ti chiami? ") if nome: print "Ciao", nome else : print "Devi dirmi il tuo nome"

Un altro semplice esempio ● Notare la sintassi: le istruzioni contenute nell'istruzione if e else sono associate al relativo blocco dagli spazi di identazione (in questo caso una tabulazione ma sono accettati anche spazi purchè coerenti) ● I due punti indicano l'inizio di un blocco di codice con una o più righe di istruzioni nome = raw_input("Ciao, come ti chiami? ") if nome: print "Ciao", nome else : print "Devi dirmi il tuo nome"