La funzione print di python

Nel linguaggio python la funzione print() mi permette di stampare qualcosa sullo schermo o in un dispositivo. E' usata soprattutto per inviare messaggi sulla console o per scrivere dentro un file di testo.

print(x)

Dove x è una stringa, un'espressione alfanumerica, un valore numerico, ecc.

Esempio

print("hello world!")

La funzione ha anche altri parametri opzionali.

  • sep modifica il carattere di separazione tra le variabili
  • end modifica il carattere di fine stringa della print
  • file modifica la destinazione dell'output ( schermo, file, ecc. )

Nota. Grazie a quest'ultima opzione (file) posso usare la funzione print per scrivere dentro un file di testo. Non solo sullo schermo. E' particolarmente utile.

Un esempio pratico

Esempio 1

Per stampare una stringa alfanumerica sullo schermo digito:

print("Mi chiamo Andrea")

La funzione stampa in output sulla console il messaggio testuale

Mi chiamo Andrea

Al termine della stampa la funzione print va a capo automaticamente sulla linea successiva.

E' l'esempio più semplice

Esempio 2

Per stampare stringhe e variabili su una stessa riga digito:

nome="Andrea"
print("Mi chiamo", nome)

Lo script visualizza in output

Mi chiamo Andrea

La funzione print stampa prima la stringa, poi il contenuto della variabile nome, restando sulla stessa linea dello schermo.

Le due informazioni devono essere separate da una virgola che si traduce automaticamente in uno spazio blank sullo schermo.

Nota. Possono anche esserci anche più variabili o stringhe separate tra loro da virgole in una stessa istruzione print. In questo caso, tutte le informazioni sono visualizzate sulla stessa riga. C'è un solo ritorno a capo dopo l'ultimo dato.
un esempio con molte variabili in una sola istruzione print

Come modificare il carattere separatore

Per evitare che ogni virgola sia sostituita da uno spazio in bianco, posso personalizzare il carattere separatore tramite l'opzione sep.

print(x,sep=s)

Dove x è l'espressione da stampare ed s è il carattere separatore da usare in sostituzione delle virgole.

Di default s è lo spazio in bianco (blank) ossia sep = ' '.

Esempio

Riprendo l'esempio precedente e sostituisco il carattere separatore con un asterisco ( sep='*' ).

nome="Andrea"
print("Mi chiamo", nome, sep="*")

Il risultato in output è il seguente

Mi chiamo*Andrea

La funzione ha stampato la stringa e la variabile usando l'asterisco come separatore.

E se voglio eliminare del tutto il carattere separatore?

Basta assegnargli una stringa vuota, ossia sep="", e il gioco è fatto.

Come eliminare il ritorno a capo

Per togliere il ritorno a capo automatico al termine della stampa utilizzo l'opzione end.

print(x,end=y)

Dove x è la stringa da stampare e y e il carattere da usare automaticamente come fine stringa.

Di default l'opzione end è assegnata al ritorno a capo ( end='\n')

Un esempio pratico

Sviluppo uno script con due funzioni print() in due diverse linee di codice.

print("Mi chiamo")
print("Andrea")

Il risultato in output è il seguente:

Mi chiamo
Andrea

Per ottenere la stampa sulla stessa linea, modifico il carattere di fine stringa nella prima istruzione print indicando end=''.

print("Mi chiamo", end=' ')
print("Andrea")

Ora il risultato in output è il seguente:

Mi chiamo Andrea

La prima print non va a capo perché il carattere di ritorno ora è uno spazio. Non è più quello di default sep='\n'.

Ovviamente, la modifica vale soltanto sulla prima print.

Sulla seconda print continua a valere il valore di default ( sep='\n' ) ossia il ritorno a capo.

Come scrivere dentro un file con print

La funzione print mi permette anche di stampare in un file usando l'opzione file.

print(x,file=f)

Dove x è l'espressione da stampare e f è il file.

Di default il valore f è sys.stdout ossia lo schermo ( standard output ). Al suo posto devo indicare un file di testo.

Un esempio pratico

In questo script stampo la stringa in un file. La prima riga apre in scrittura il file log.txt e gli assegna il nome logico fx.

Nella seconda riga aggiungo alla print() l'opzione file=fx.

fx = open("log.txt","w")
print("Mi chiamo Andrea", file=fx)
fx.close()

In questo caso la funzione print non visualizza la stringa sullo schermo, bensì la scrive nel file log.txt

Infine nella terza riga la funzione close() chiude il file.

Lo script crea un file sul disco fisso del PC chiamato log.txt.

il file è stato creato

All'interno del file c'è un solo record con scritto "Mi chiamo Andrea".

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