Questo sito utilizza cookie per raccogliere dati statistici.
Privacy Policy
# Variabili e Tipi di Dato Base
## Variabili in Python
Una **variabile** è uno spazio di memoria che può contenere un valore. In Python, le variabili vengono create automaticamente al momento dell'assegnazione di un valore, senza bisogno di dichiararle esplicitamente come in altri linguaggi.
### Assegnazione di variabili
In Python, l'assegnazione di valori alle variabili avviene con l'operatore di assegnazione `=`.
```python
# Assegniamo un numero intero a una variabile
x = 10
# Assegniamo una stringa a una variabile
nome = "Mario"
# Assegniamo un numero decimale (float) a una variabile
y = 3.14
```
A differenza di molti altri linguaggi, in Python non è necessario dichiarare il tipo di una variabile. Python è un linguaggio a **tipizzazione dinamica**, il che significa che il tipo della variabile viene determinato automaticamente in base al valore assegnato.
### Modificare il tipo di una variabile
Le variabili in Python possono cambiare tipo durante l'esecuzione del programma. Ad esempio, una variabile che inizia come intero può diventare una stringa successivamente:
```python
x = 10 # x è un intero
x = "ciao" # x è ora una stringa
```
---
## Tipi di Dato Base
Python supporta diversi tipi di dati, tra cui numeri interi, numeri decimali (float), stringhe e valori booleani.
### Numeri interi (int)
I numeri interi sono numeri senza parte decimale, come `10`, `-3`, `1000`.
```python
x = 5
y = -2
print(x, y) # Output: 5 -2
```
### Numeri decimali (float)
I numeri decimali (o floating point) sono numeri che hanno una parte decimale, come `3.14`, `-0.001`, `2.0`.
```python
pi = 3.14159
saldo = -150.75
print(pi, saldo) # Output: 3.14159 -150.75
```
### Stringhe (str)
Le stringhe sono sequenze di caratteri racchiuse tra virgolette singole `'` o doppie `"`. Python supporta anche la concatenazione di stringhe con l'operatore `+`.
```python
nome = "Mario"
cognome = 'Rossi'
nome_completo = nome + " " + cognome
print(nome_completo) # Output: Mario Rossi
```
#### Operazioni con le stringhe
È possibile accedere ai singoli caratteri di una stringa utilizzando gli indici e concatenare stringhe con l'operatore `+`:
```python
nome = "Python"
print(nome[0]) # Output: P (primo carattere)
print(nome[-1]) # Output: n (ultimo carattere)
```
### Valori booleani (bool)
I valori booleani possono essere `True` o `False`. Vengono utilizzati principalmente nei confronti e nei costrutti condizionali.
```python
vero = True
falso = False
print(vero, falso) # Output: True False
```
I valori booleani vengono spesso utilizzati con gli operatori di confronto come `==`, `!=`, `<`, `>`, `<=`, `>=`.
```python
x = 10
y = 5
risultato = x > y # Confronta se x è maggiore di y
print(risultato) # Output: True
```
---
## Casting (Conversione di Tipi)
In Python, è possibile convertire esplicitamente un tipo di dato in un altro utilizzando le funzioni di **casting**. Ecco alcune delle funzioni di casting più comuni:
- **`int()`**: converte un valore in un intero.
- **`float()`**: converte un valore in un numero decimale.
- **`str()`**: converte un valore in una stringa.
- **`bool()`**: converte un valore in booleano.
```python
# Convertiamo un numero decimale in intero
x = 3.14
x_intero = int(x)
print(x_intero) # Output: 3
# Convertiamo un intero in stringa
y = 100
y_stringa = str(y)
print(y_stringa) # Output: '100'
# Convertiamo una stringa in numero
numero_str = "50"
numero_intero = int(numero_str)
print(numero_intero) # Output: 50
```
---
## Regole per i nomi delle variabili
In Python, ci sono alcune regole da seguire quando si scelgono i nomi delle variabili:
- Devono iniziare con una **lettera** (maiuscola o minuscola) o un **underscore** (`_`).
- Non possono iniziare con un numero.
- Possono contenere lettere, numeri e underscore.
- Python distingue tra **maiuscole e minuscole**. Quindi `variabile` e `Variabile` sono due variabili diverse.
```python
_nome = "Mario" # Valido
eta1 = 25 # Valido
1nome = "Franco" # Non valido (inizia con un numero)
```