Forum >> Principianti >> Programma maleducato?

Pagina: 1

Ciao, ho scritto questo codice in IDLE (using Python 3.5)
from sys import exit
exit("ciao")
Nel librone dicono che questa funzione termina immediatamente il programma, ma prima può salutarmi, perché non lo fa?


--- Ultima modifica di Alex in data 2017-12-07 01:31:42 ---
Ciao caro, per curiosità che libro stai leggendo?

Comunque sia, sys.exit() in realtà solleva un'eccezione di tipo SystemExit (che puoi intercettare con un try, except ad esempio) ed a seconda di "come" esegui il tuo codice, potresti avere delle piccole differenze di output. In realtà per "salutare" Python ti "saluta", però attento perché il tuo "ciao" potrebbe finire dritto dritto nel traceback.

Fai alcune prove e non avere paura di sporcarti le mani. ;)

Cya
Ciao Palmux, grazie per la spiegazione, come vedi in questo libro a pag. 145: Terminare un programma.

Dicono che la funzione exit può visualizzare una stringa sul terminale, ma la stringa argomento della funzione non viene visualizzata.

In questo capitolo non spiegano altro riguardo questa funzione, perciò ho interpretato che la stringa dovesse essere in qualsiasi caso visualizzata.

Sono io che non capisco una mazza o il libro che non si è spiegato bene?


--- Ultima modifica di Alex in data 2017-12-07 20:32:15 ---
Sono io che non capisco una mazza o il libro che non si è spiegato bene?
Curiosamente, nessuna delle due. È IDLE che cattura l'eccezione SystemExit e la nasconde. se provi il programma da terminale, dovresti vedere il messaggio.


THE 🍺-WARE LICENSE (Revision ㊷):
<㎝🐌🐍.🇮🇹> wrote this post. As long as you retain this notice you
can do whatever you want with this stuff. If we meet some day, and you
think this stuff is worth it, you can buy me a 🍺 in return. -- ㎝
Esatto, grazie cm, per ora questi argomenti non sono alla mia portata.

Avevo anche confuso la shell con il terminale, incredibile, certe volte mi meraviglio di me stesso.


--- Ultima modifica di Alex in data 2017-12-07 23:15:32 ---


Pagina: 1



Esegui il login per scrivere una risposta.