format()

Il metodo format(…) applicato a una stringa permette di formattarla con una sintassi aggiornata e più complessa rispetto a quella di print()

1

Il segnaposto {} riceve il valore specificato

"Ho visto {} al cinema".format("Shrek")

'Ho visto Shrek al cinema'

2

I segnaposto {} ricevono i valori specificati posizione dopo posizione

"Ho visto {} al cinema {}".format("Shrek", "Odeon")

'Ho visto Shrek al cinema Odeon'

3

I segnaposto con indice ricevono il valore con lo stesso indice

"Ho visto {0} al cinema".format("Shrek")  
"Ho visto {0} al cinema {1}".format("Shrek", "Odeon")  
"Ho visto {1} al cinema {0}".format("Odeon", "Shrek")

'Ho visto Shrek al cinema'
'Ho visto Shrek al cinema Odeon'
'Ho visto Shrek al cinema Odeon'

4

I segnaposto con nome ricevono il valore con lo stesso nome

"Ho visto {film} al cinema".format(film="Shrek")
"Ho visto {film} al cinema {cinema}".format(film="Shrek", cinema="Odeon")
"Ho visto {film} al cinema {cinema}".format(cinema="Odeon", film="Shrek")

'Ho visto Shrek al cinema'
'Ho visto Shrek al cinema Odeon'
'Ho visto Shrek al cinema Odeon'

5

Il segnaposto specifica l’indice del valore in una lista

"Ho visto {0} al cinema {1[0]} e al cinema {1[1]}".format("Shrek", ["Astra","Odeon"])
"Ho visto {film} al cinema {cinema[0]} e al cinema {cinema[1]}".format(film="Shrek", cinema=["Astra","Odeon"])

'Ho visto Shrek al cinema Astra e al cinema Odeon'
'Ho visto Shrek al cinema Astra e al cinema Odeon'

6

Allinea a sinistra (destra, centro) su 10 colonne

"{:<10}".format("Shrek")
"{:>10}".format("Shrek")
"{:^10}".format("Shrek")

'Shrek     '
'     Shrek'
'  Shrek   '

6

Allinea a sinistra (destra, centro) su 10 colonne e utilizza il carattere di riempimento specificato

"{:*<10}".format("Shrek")
"{:*>10}".format("Shrek")
"{:*^10}".format("Shrek")

'Shrek*****'
'*****Shrek'
'**Shrek***'

7

Formatta le percentuali: moltiplica per 100, arrotonda, aggiunge il segno di percentuale (0,1428… diventa 14.3%)

perdita =15
capitale=105  
print("Ho perso il {:.1%} del capitale".format(perdita/capitale))

'Ho perso il 14.3% del capitale'