CodeGym /Corsi /Python SELF IT /Tipi di dati in Python

Tipi di dati in Python

Python SELF IT
Livello 5 , Lezione 1
Disponibile

1.1 Tipi integrati

Python offre una varietà di tipi di dati integrati che consentono di risolvere molteplici problemi di programmazione. Alcuni di essi li abbiamo già studiati, ora li esamineremo un po' più in dettaglio. Ecco una breve descrizione dei principali tipi di dati integrati:

  1. int — valori interi senza parte frazionaria.
  2. float — numeri a virgola mobile (numeri reali).
  3. complex — numeri complessi (composti da parte reale e immaginaria).
  4. str — stringhe, sequenze di caratteri.
  5. bool — tipo di dati logico, può assumere i valori True o False.
  6. None — tipo speciale che rappresenta l'assenza di valore.
  7. bytes — sequenza immutabile di byte.
  8. bytearray — sequenza mutabile di byte.
  9. memoryview — oggetto che consente di lavorare con dati in forma binaria senza copiarli.

Nella tabella seguente sono presentati questi tipi di dati e le loro caratteristiche:

Tipo di dato Descrizione Esempio d'uso
int Numeri interi x = 10
float Numeri a virgola mobile y = 3.14
complex Numeri complessi z = 1 + 2j
str Stringhe s = "Hello, world!"
bool Tipo Booleano is_valid = True
None Assenza di valore result = None
bytes Sequenza immutabile di byte b = bytes([50, 100, 76])
bytearray Sequenza mutabile di byte ba = bytearray([50, 100])
memoryview Rappresentazione dei dati in memoria mv = memoryview(b'abc')

L'uso di questi tipi di dati permette di implementare qualsiasi logica in Python, dalle operazioni aritmetiche di base e la manipolazione di testo alla complessa gestione dei dati binari e della memoria.

1.2 Collezioni

Oltre al salvataggio dei dati, Python permette di conservare interi gruppi di oggetti. Questi tipi sono chiamati collezioni. Le collezioni sono diverse strutture dati che permettono di archiviare, gestire ed elaborare gruppi di elementi. Di seguito sono presentati i principali tipi di collezioni in Python:

  1. list (lista) — insieme ordinato di elementi modificabile.
  2. tuple (tupla) — sequenza ordinata di elementi immutabile.
  3. range (intervallo) — sequenza di numeri, solitamente usata nei cicli.
  4. set (insieme) — collezione non ordinata di elementi unici.
  5. dict (dizionario) — collezione di coppie chiave-valore con chiavi uniche.
  6. frozenset — variante immutabile di un insieme set.

Nella tabella seguente sono presentate queste collezioni e le loro caratteristiche:

Tipo di collezione Descrizione Esempio
list Mutabile, elementi possono ripetersi my_list = [1, 2, 3]
tuple Immutabile, elementi possono ripetersi my_tuple = (1, 2, 3)
range Sequenza immutabile di numeri my_range = range(1, 10)
set Insieme non ordinato di elementi unici my_set = {1, 2, 3}
dict Coppie chiave-valore, chiavi uniche my_dict = {'a': 1, 'b': 2}
frozenset Insieme immutabile di elementi unici my_frozenset = frozenset([1, 2, 3])

Ognuna di queste collezioni ha proprietà e metodi unici, il che le rende adatte a diverse attività di programmazione, dalla semplice memorizzazione dei dati alla loro elaborazione e gestione complessa. Le esamineremo più dettagliatamente nelle lezioni successive.

1.3 Classi e oggetti

I tipi integrati sono fantastici, ma a un certo punto potrebbero non bastare. In tal caso, Python offre la possibilità di dichiarare i propri tipi — le classi.

Le classi in Python forniscono un modo per racchiudere funzioni e dati correlati. Inoltre, permettono di modellare oggetti reali o astratti con determinate proprietà e comportamenti.

Ad esempio, immagina di dover descrivere una classe "Smartphone". Questa classe potrebbe contenere dati sul modello, il produttore, la memoria e il sistema operativo. Inoltre, potrebbe avere funzioni (metodi) che descrivono il comportamento dello smartphone, come accensione e spegnimento, installazione di applicazioni e così via.

Una classe viene creata con la parola chiave class. Questo comando crea un nuovo tipo di oggetto e permette alla nuova classe di ereditare attributi e metodi da un'altra classe.

Per prima cosa ci eserciteremo ad utilizzare le classi esistenti e a creare i loro oggetti, e quando sarà il momento, creeremo le nostre.

Una cosa utile da sapere è che le classi hanno funzioni integrate (chiamate anche metodi di classe), e queste funzioni vengono chiamate nel seguente modo:


oggetto.funzione(parametri)

Ricordi quando abbiamo chiamato la funzione format() su una stringa? Questo è stato proprio un caso del genere. Esamineremo più nel dettaglio le funzioni, le classi e gli oggetti nelle prossime lezioni.

Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION