Linguaggio Python: le variabili

Cerca nel sito

Altri risultati..

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Python- le variabili


Indice

Le variabili

Una variabile serve per immagazzinare dati, possiamo assegnare un dato a una variabile usando l’operatore di assegnazione (=).

num = 5
print(num)
word = “ciao”
print(word)

Output:


  5
  ciao

Il nome della variabile viene definito da noi, è buona norma utilizzare un nome che rappresenta il contenuto della variabile, in modo da facilitare la lettura del codice.

cat = input(“Inserisci un nome per il tuo nuovo gatto: “)
print(cat+” è il tuo nuovo padrone”)

Output:

Inserisci un nome per il tuo nuovo gatto: Fluffi
Fluffi è il tuo nuovo padrone

Tipi di dati

Python è un linguaggio non tipizzato questo vuol dire che il tipo di dato che una variabile può contenere non va dichiarato espressamente. Per conoscere il tipo di dato che una variabile contiene possiamo usare la funzione type.

var = “ciao”
type(var)

Output:

str

NOTA BENE

Jupyter Notebook e l’interprete interattivo di Python stampano l’output dell’ultima istruzione anche senza utilizzare esplicitamente la funzione print.

I tipi di dati principali che Python ci mette a disposizione sono i seguenti:

  • Interi: numeri interi (es: 5, 10, 123)
  • Float: numeri in virgola mobile (es: 4.34, 5.31, 0.17)
  • Stringhe: del testo (es: “ciao”, “abc”, “Yo, come butta fratello ?”)
  • Booleani: possono avere solo due valori vero/falso (True/False)

# Intero
var = 5

# Float
var = 4.15

# Stringa
var = “ciao ciao”

# Boolean
var = True

type(var)

Output:

bool

Casting

Con python possiamo convertire un tipo di dato in un altro con un’operazione chiamata casting.

ES. 1: Casting da intero a stringa

# Creiamo una variabile che contiene un’intero
var = 5

# Convertiamo la variabile da intero a stringa
var = str(var)

print(var)
print(type(var))

Output:

5
<class ‘str’>

ES. 2: Casting da intero a float

# Creiamo una variabile che contiene un intero
var = 1

# Convertiamo la variabile da intero a float
var = float(var)

print(var)
print(type(var))

Output:

1.0
<class ‘float’>

ES. 3: Casting da stringa a intero

# Creiamo una variabile che contiene una stringa
var = “10”

# Convertiamo la variabile da stringa a intero
var = int(var)

print(var)
print(type(var))

Output:

10
<class ‘int’>

Ovviamente il casting da stringa ad intero non si può fare se la stringa non è un numero.

Ti potrebbe interessare anche:  Analisi Matematica: Esercizi svolti da temi d'esame - 2-
ES. 3: Casting da stringa a intero (sbagliato)

# Creiamo una variabile che contiene un intero
var = “boh”

# Convertiamo la variabile da intero a float
var = float(var)

print(var)
print(type(var))

Python esempio di casting sbagliato

Come vedi il tentativo di convertire una parola in numero ha causato un’errore, che in Python vengono chiamate eccezioni.
Ogni volta che si verifica un’eccezione Python ci mostra:

  • la riga esatta in cui si è verificato (La freccia verde)
  • il tipo di eccezone (ValueError)
  • una breve descrizione (could not convert string to float: ‘boh’ / Impossibile convertire la stringa ‘boh’ in float)

Quando si tratta di unire stringhe e numeri, possiamo usare il casting:

cat_lives = 7
print(“I gatti hanno “+str(cat_lives)+” vite”)

Output:

I gatti hanno 7 vite

Formattazione

Un’altra soluzione consiste nell’utilizzare l’operatore di formattazione (%)

cat_lives = 7
print(“I gatti hanno %d vite” % cat_lives)

Output:

I gatti hanno 7 vite

Il carattere dopo l’operatore di formattazione indica il tipo di variabile, i principali sono:

  • %d: numero intero
  • %f: numero in virgola mobile
  • %s: stringa

Se ti interessa la lista completa clicca qui sotto:

https://docs.python.org/3/library/stdtypes.html#old-string-formatting

Possiamo anche utilizzare più operatori di formattazione all’interno di una stringa.

cat_lives = 7

cat = input(“Come si chiama il tuo gatto ? “)
my_cat_lives = input(“Quante vite ha perso ? “)

my_cat_lives = int(my_cat_lives)

my_cat_lives = cat_lives-my_cat_lives

print(“Il tuo gatto %s ha ancora %d vite” % (cat, my_cat_lives))

Output:

Come si chiama il tuo gatto ? Elon
Quante vite ha perso ? 1
Il tuo gatto Elon ha ancora 6 vite

NOTA BENE

la funzione input ritorna una stringa, quindi abbiamo dovuto usare il casting per convertirla in un’intero.

Un’altra soluzione ancora, quella consigliata per Python 3, consiste nell’utilizzare il metodo  format:

cat_lives = 7
cat = input(“Come si chiama il tuo gatto ? “)
my_cat_lives = int(input(“Quante vite ha perso ? “))
my_cat_lives = cat_lives-my_cat_lives
print(“Il tuo gatto {name} ha ancora {lives} vite”.format(name=cat, lives=my_cat_lives))

Output:

Come si chiama il tuo gatto ? Elon
Quante vite ha perso ? 6
Il tuo gatto Elon ha ancora 1 vite

Se usiamo una versione di Python superiore alla 3.6 abbiamo anche un’altro modo per formattare le stringhe, chiamato f-strings

cat_lives = 7

cat = input(“Come si chiama il tuo gatto ? “)
my_cat_lives = int(input(“Quante vite ha perso ? “))
my_cat_lives = cat_lives-my_cat_lives
# inseriamo una f prima della stringa per indicare la formattazione
print(f”Il tuo gatto {cat} ha ancora {my_cat_lives} vite”)

Output:

Come si chiama il tuo gatto ? Elon
Quante vite ha perso ? 2
Il tuo gatto Elon ha ancora 5 vite

Introduzione a Python – Input e Output

 

Ti potrebbe interessare anche:  ESEMPI SVOLTI DI DISEQUAZIONI ESPONENZIALI

(71)