Tipi di Dato e Variabili
Tipi di Dato e Variabili
Section titled “Tipi di Dato e Variabili”Basato su: Manuale Python per principianti (freeCodeCamp)
🎯 Obiettivi del Modulo
Section titled “🎯 Obiettivi del Modulo”- ✅ Conoscere tutti i tipi di dato fondamentali (int, float, string, bool, NoneType)
- ✅ Distinguere tra numeri interi e floating-point
- ✅ Usare le costanti
- ✅ Creare e usare enumerazioni
📅 Lezione 1 — Tipi di dati in Python
Section titled “📅 Lezione 1 — Tipi di dati in Python”Obiettivi specifici
Section titled “Obiettivi specifici”- Conoscere i 4 tipi di dato fondamentali
- Usare la funzione type() per riconoscere il tipo
- Capire il dynamic typing
Contenuti (dal manuale, sezione “Tipi di dati in Python”)
Section titled “Contenuti (dal manuale, sezione “Tipi di dati in Python”)”- Numeri interi (int):
1,42,-7,0 - Numeri floating-point (float):
3.14,-0.5,1.0 - Stringhe (str):
"ciao",'Python' - Booleani (bool):
True,False - NoneType:
None(assenza di valore) - Dynamic typing: la stessa variabile può cambiare tipo
type(): scoprire il tipo di un valore
Attività (esercizi)
Section titled “Attività (esercizi)”# Prova questi tipiprint(type(42))print(type(3.14))print(type("Ciao"))print(type(True))print(type(None))
# Dynamic typingx = 10print(type(x))x = "ora sono una stringa"print(type(x))Riferimenti
Section titled “Riferimenti”- Manuale → sezione Tipi di dati in Python
📅 Lezione 2 — Numeri in Python
Section titled “📅 Lezione 2 — Numeri in Python”Obiettivi specifici
Section titled “Obiettivi specifici”- Operare con numeri interi e float
- Conversioni di tipo (casting)
- Capire gli errori di arrotondamento dei float
Contenuti (dal manuale, sezione “Numeri in Python”)
Section titled “Contenuti (dal manuale, sezione “Numeri in Python”)”- Operatori:
+ - * / // % ** - Divisione intera
//vs normale/ - Modulo
%(resto della divisione) - Potenza
** - Conversioni:
int(),float() - Attenzione ai float:
0.1 + 0.2 != 0.3
Attività (esercizi)
Section titled “Attività (esercizi)”# Calcola:print(10 + 5)print(10 - 5)print(10 * 5)print(10 / 3) # divisione normaleprint(10 // 3) # divisione interaprint(10 % 3) # restoprint(2 ** 10) # potenza
# Castingprint(int(3.14))print(float(10))Riferimenti
Section titled “Riferimenti”- Manuale → sezione Numeri in Python
📅 Lezione 3 — Costanti in Python
Section titled “📅 Lezione 3 — Costanti in Python”Obiettivi specifici
Section titled “Obiettivi specifici”- Capire il concetto di costante
- Usare la convenzione di naming in MAIUSCOLO
Contenuti (dal manuale, sezione “Costanti in Python”)
Section titled “Contenuti (dal manuale, sezione “Costanti in Python”)”- Python non ha vere costanti (nessuna parola chiave
const) - Convenzione: nome in MAIUSCOLO = costante
- Esempi tipici:
PI = 3.14,MAX_RETRY = 5
Attività (esercizi)
Section titled “Attività (esercizi)”# Definisci alcune costantiPI = 3.14159NOME_CORSO = "Python per Principianti"MAX_STUDENTI = 30
print(PI, NOME_CORSO, MAX_STUDENTI)Riferimenti
Section titled “Riferimenti”- Manuale → sezione Costanti in Python
📅 Lezione 4 — Enum in Python
Section titled “📅 Lezione 4 — Enum in Python”Obiettivi specifici
Section titled “Obiettivi specifici”- Creare enumerazioni
- Accedere ai valori
- Iterare sugli enum
Contenuti (dal manuale, sezione “Enum in Python”)
Section titled “Contenuti (dal manuale, sezione “Enum in Python”)”- Importare
Enumdal moduloenum - Definire:
class Colore(Enum): ROSSO = 1 - Accedere:
Colore.ROSSO,Colore.ROSSO.name,Colore.ROSSO.value - Iterare:
for c in Colore:
Attività (esercizi)
Section titled “Attività (esercizi)”from enum import Enum
class Giorno(Enum): LUNEDI = 1 MARTEDI = 2 MERCOLEDI = 3 GIOVEDI = 4 VENERDI = 5 SABATO = 6 DOMENICA = 7
print(Giorno.LUNEDI)print(Giorno.LUNEDI.name)print(Giorno.LUNEDI.value)
for g in Giorno: print(g.name, g.value)Riferimenti
Section titled “Riferimenti”- Manuale → sezione Enum in Python
🏠 Esercizi per Casa
Section titled “🏠 Esercizi per Casa”"""ESERCIZIO 1: Calcolatrice sempliceChiedi all'utente due numeri e stampa:somma, differenza, prodotto, divisione, potenza"""
"""ESERCIZIO 2: Tipi misteriosiDato un valore, stampa il suo tipo con type()Prova con: 42, "42", 42.0, True, None"""
"""ESERCIZIO 3: Enum personalizzatoCrea un enum StatoOrdine con:IN_ATTESA, IN_ELABORAZIONE, SPEDITO, CONSEGNATOe stampa tutti i valori"""📊 Verifica Apprendimento
Section titled “📊 Verifica Apprendimento”| Domanda | Risposta |
|---|---|
| Quanti tipi di dato fondamentali? | 5 (int, float, str, bool, NoneType) |
Cosa fa type(42)? | Restituisce <class 'int'> |
Differenza tra / e //? | / divisione normale, // divisione intera |
| Come si converte un float in int? | int(3.14) |
| Come si scrive una costante? | Nome in MAIUSCOLO (PI = 3.14) |
| Cosa importare per gli enum? | from enum import Enum |