Appunti personali sul linguaggio Python

La funzione int ( Python )

Nel linguaggio python per trasformare un valore alfanumerico in un valore numerico utilizzo la funzione int()

La sintassi

int(argomento)

La funzione int() converte la stringa in un numero intero oppure un numero reale in un numero intero.

L'argomento può essere una costante o una variabile alfanumerica.

  • Se l'argomento è un valore reale, la funzione int tronca ogni cifra dopo la virgola ( es. da 3.5 a 3 ).
  • Se l'argomento è una stringa, la funzione int lo converte in un valore numerico intero ( es. da "3" a 3 ).

Nota. La stringa non deve avere spazi all'inizio o alla fine. Può eventualmente contenere il segno + o - come primo carattere.

Un esempio pratico

Esempio 1

Nel seguente codice ho assegnato alla variabile anno il valore "2018".

anno="2018"

Essendo un valore tra virgolette, la variabile anno è alfanumerica.

Il contenuto della variabile è il seguente.

"2018"

Quindi, non posso usare la variabile anno nelle operazioni matematiche ( es. anno+1 ).

Per trasformarla in una variabile numerica utilizzo l'istruzione int().

anno=int(anno)

Ora il contenuto della variabile non è più la stringa "2018" ma il numero intero 2018 (senza virgolette )

2018

A questo punto posso usare la variabile anno per qualsiasi operazione matematica, sommarla con altri numeri, ecc.

anno=anno+1

Esempio 2

In questo script converto un numero reale in un intero.

x=2.5
y=int(x)
print(x)

L'output è il seguente

2

La funzione ha troncato il valore numerico dopo la virgola.

Esempio 3

In questo script converto una stringa in un valore numerico.

x="2"
y=x
print y

L'output dello script è il seguente

2

Ora il dato non è più tra virgolette. E' stato trasformato da stringa a numero.

Come convertire un numero in base decimale

La funzione int è utile anche per convertire un numero da binario, ottale, esadecimale a decimale.

Per farlo bisogna documentare il secondo parametro opzionale.

int(stringa, base)

Dove la stringa è il valore da convertire (es."0100" in binario) e il secondo parametro è la base numerica del valore ( es. 2 per il binario, 8 per l'ottale, 16 per l'esadecimale ).

Esempio

Esempio 1

In questo script trasformo un numero binario in decmale.

int("0100",2)

Il risultato è il seguente:

4

Esempio 2

Ora converto un numero ottale in decmale.

int("11",8)

Il risultato è il seguente:

9

Esempio 3

In quest'ultimo esempio converto un numero esadecimale in decmale.

int("A",16)

Il risultato è il seguente:

10

E così via.

Nota. Grazie a questo metodo posso convertire qualsiasi numero nelle basi da 2 a 36. Quindi, non solo binario, ottale ed esadecimale. In ogni caso il numero da convertire deve essere inserito come una stringa, ossia tra virgolette, altrimenti l'interprete va in errore.


 
Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

Questo sito utilizza cookie tecnici. Sono presenti alcuni cookie di terzi ( Gooogle, Facebook ) per la personalizzazione degli annunci pubblicitari. Cliccando su OK, scorrendo la pagina o proseguendo la navigazione in altra maniera acconsenti all’uso dei cookie.

Per ulteriori informazioni o per revocare il consenso fai riferimento alla Privacy del sito.
knowledge base

Libri di approfondimento
  1. Il linguaggio Python
  2. Come installare Python sul PC
  3. Come scrivere un programma in Python
  4. Come usare Python in modalità interattiva
  5. Le variabili
  6. I numeri
  7. Gli operatori logici
  8. Le strutture iterative ( o cicli )
  9. Le strutture condizionali
  10. I file in python