Coursera Learner working on a presentation with Coursera logo and
Coursera Learner working on a presentation with Coursera logo and

Nella maggior parte dei casi, gli utenti di Python iniziano il loro percorso comprendendo il funzionamento di print().  La funzione print aiuta i programmatori a scrivere i loro one-liner come hello world. La funzione print può anche essere utilizzata per visualizzare messaggi formattati sullo schermo e per individuare i bug. Detto questo, la funzione print di Python ha molto altro da offrire e ne parleremo in questo articolo. 

Nonostante sia poco apprezzata e leggermente noiosa, print() offre molte cose.  Prima di procedere, vale la pena di ricordare che print() è diventata un’aggiunta importante in Python 3, dove ha effettivamente sostituito la vecchia print di Python 2.  

Python e la stampa

Vediamo alcuni esempi di Print python per imparare i diversi modi di chiamare la funzione print(), che in un linguaggio di programmazione significa acquisire familiarità con la firma delle funzioni. 

Stampa()

Non è necessario passare degli argomenti, ma bisogna comunque aggiungere delle parentesi vuote, che permettono a Python di eseguire la funzione invece di riferirsi solo al suo nome. In questo modo si creerà un carattere newline. Questo carattere sarà invisibile e creerà un vuoto sullo schermo. È possibile richiamare print() più volte per aggiungere spazio verticale. È molto simile a premere il tasto Invio” sulla tastiera.

Carattere Newline

Come si è detto in precedenza, se non si utilizzano gli argomenti quando si chiama print(), si crea una riga vuota. Questa riga contiene solo il carattere newline. È bene tenere presente che questa riga non è vuota. L’uso dei letterali di stringa in Python può aiutare a visualizzare gli elementi della riga.

Se si vuole cancellare un carattere newline da Python, si può usare il metodo rstrip(). Ecco come apparirà. 

 

Nella maggior parte dei casi, sarebbe meglio comunicare un messaggio all’utente finale. Ecco come è possibile farlo. 

  • Si può iniziare passando un letterale di stringa a print (): che richiederà un messaggio che dice (si prega di attendere mentre il programma si sta caricando)
  • È possibile estrarre il messaggio e dargli un nome pertinente per migliorare la leggibilità e garantire il riutilizzo del codice. 
  • Infine, è possibile passare espressioni come la concatenazione di stringhe da valutare prima di procedere alla stampa del risultato.

Che ci crediate o no, in Python esistono molte tecniche di formattazione dei messaggi. Considerate le stringhe F presenti in Python 3.6, poiché la sintassi che forniscono è probabilmente la più concisa. L’uso delle stringhe F assicura che non si commettano errori comuni come la mancata aggiunta di operandi concatenati. Poiché Python è un linguaggio incredibilmente robusto, non consente ai programmatori di fare cose come l’esempio seguente

Forzare i numeri in stringhe è semplicemente sbagliato e non ha senso. Sarebbe invece ideale trasformare il numero in stringa per unirli. 

 

Python informa sempre dei problemi attraverso un traceback, a meno che l’utente non si occupi da solo di tali errori.

Standard Out e print()

Se siete programmatori, saprete bene che ogni programma contiene un’area di uscita del testo denominata standard out, anche detta stdout”. La funzione print python accetta dati python come stringhe e ints, stampando i valori verso lo standard out.

Chiamare il testo standard out in uno scenario del genere significa che c’è un gruppo di righe in cui ogni riga è un gruppo di caratteri contenenti un carattere di newline ‘\n’ alla fine di ogni riga. Nonostante ciò che può sembrare, lo standard out non è troppo complicato. Si tratta di un’area di testo condivisa da ogni codice all’interno di un programma. 

Terminale di uscita standard

Ogni volta che si esegue un programma in un terminale, si vede comparire l’output standard proprio lì. Vediamo un esempio di come eseguire il comando hello.py nel terminale.

$ python3 hello.py

ciao a tutti

Come stai?

Sto bene

$

La funzione di stampa di Python

La funzione print di python accetta essenzialmente una quantità qualsiasi di parametri, dopodiché inizia a stamparli in una singola riga di testo. Una volta fatto ciò, questi elementi vengono convertiti separatamente in forma di testo, separati da spazi. È bene tenere presente che alla fine c’è un ‘´n’. Se chiamato con 0 parametri, il comando print() stamperà solo ‘\n’.

Il codice sorgente python scrive il testo all’interno di una stringa utilizzando le virgolette, come ad esempio hello”, per garantire che tutti siano abituati a vedere tali forme. È bene tenere presente che quando si stampa una stringa, si stampano solo i dati di testo della stringa, senza virgolette. 

>>> print(‘Ciao’)

Ciao

Stampa e rendimento: capire la correlazione

L’uso del comando return è senza dubbio il modo migliore per restituire i risultati al rispettivo chiamante. Inoltre, l’uso di standard out è l’alternativa secondaria per comunicare i dati all’esterno. Tuttavia, è relativamente più semplice. In genere, lo standard out è sotto forma di testo ed è condiviso in quasi tutte le funzioni. 

Pertanto, sarebbe meglio utilizzare i valori di ritorno come meccanismo principale di test delle funzioni e di output dei dati della scatola nera. Ricordate che standard out è essenzialmente un tipo di output alternativo alle funzioni e viene spesso utilizzato per produrre output di testo per gli utenti che si trovano nel terminale. 

Stampa su file

In print python, la stampa nello standard output è abbastanza comune. Detto questo, la funzione print() è ideale anche per stampare su file aperti.  Se volete aprire un file per scriverlo, iniziate ad aggiungere wogni volta che intendete chiamare la funzione open(). In questo modo si cancellerà il contenuto esistente del file, motivo per cui è necessario prestare attenzione ogni volta che si apre per la scrittura. Una volta aperto il file, il parametro elettivo file = guiderà le righe di testo nel file anziché scriverle nello standard output.

Nonostante sia una funzione fondamentale, print python può essere piuttosto difficile da capire. Tuttavia, le informazioni e i suggerimenti discussi in questo articolo vi forniranno un’idea più chiara, assicurandovi un uso efficace di print().