Il metodo format in Python

Nel linguaggio Python il metodo format() mi consente la formattazione dei dati in una stringa e la costruzione di maschere di visualizzazione.

stringa.format(x1,x2,...)

I parametri della funzione format sono i valori da inserire nei relativi campi della stringa.

    Come formattare una stringa in Python. Per formattare una stringa posso usare due metodi.
  • La formattazione per posizione
  • La formattazione con segnaposto nominali

La formattazione per posizione

Come prima cosa, inserisco in una stringa dei segnaposto racchiusi tra parentesi graffe.

A ogni segnaposto assegno un parametro numerico o alfanumerico per identificarlo.

stringa="E meglio {0} oppure {1}?"

Poi stampo la stringa con il metodo format() indicando il valore dei due parametri tra parentesi.

Ogni valore è separato dagli altri tramite una virgola.

print(stringa.format("la pizza", "il gelato"))

Il primo parametro "la pizza" è assegnato al primo segnaposto {0}.

Il secondo parametro "il gelato" è assegnato al secondo segnaposto {1}.

Nota. Non è importante il valore numerico del segnaposto ma soltanto la posizione, ossia l'ordine di presentazione nella stringa. Quindi, se {1} venisse prima di {0} sarebbe il primo segnaposto.

Il metodo format() costruisce la stringa, sostituendo i segnaposto con i relativi valori, e la funzione print la visualizza sulla console.

E meglio la pizza oppure il gelato?

Posso ripetere un segnaposto nella stringa?

Si, Uno stesso segnaposto può anche essere ripetuto più volte in una stringa.

stringa="E meglio {0} oppure {1}? Secondo me scegli {0}"

In questo caso l'output dell'esempio precedente diventa.

E meglio la pizza oppure il gelato? Secondo me scegli la pizza.

La formattazione con i nomi

Oltre ai segnaposto per posizione, posso usare i segnaposto per nome.

In questo caso utilizzo come segnaposto dei nomi mnemonici che identificano in modo univoco un campo all'interno della stringa.

stringa="Sono le {ore} e {minuti}"

Al momento della visualizzazione, assegno i valori ai segnaposto tramite il metodo format().

In questo caso l'ordine di presentazione non è importante.

print(stringa.format(minuti="un quarto",ore=10))

Al segnaposto {minuti} assegno la stringa alfanumerica "un quarto".

Al segnaposto {ore} assegno il valore numerico intero 10.

Il metodo format() costruisce la stringa e la funzione print() la stampa a video

Sono le 10 e un quarto

E così via

 


 

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

FacebookTwitterLinkedinLinkedin
knowledge base
  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