Soit le fichier pb_exit.py qui contient deux lignes :
import sys
sys.exit(0)
Pour python < 2.6 :
python -i pb_exit.py
sort immédiatement !
Avec python 2.6 :
python -i pb_exit.py
Traceback (most recent call last):
File "pb_exit.py", line 2, in <module>
sys.exit(0)
SystemExit: 0
>>>
Cela semble effectivement le bon comportement
puisque l'on a demandé "-i" ... Mais je cherche
un moyen de faire sortir de l'interpréteur depuis
le fichier pb_exit.py ... et je ne trouve pas.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Kobayashi
Kobayashi a écrit :
Bonjour à tous,
Soit le fichier pb_exit.py qui contient deux lignes :
import sys sys.exit(0)
try: sys.exit(0) except SystemExit: import os, signal os.kill(os.getpid(), signal.SIGQUIT) pass
Mais :
1. Ça écrit : "Quit" 2. C'est pas portable 3. Qu'est que c'est moche !!
K.
Pour python < 2.6 :
python -i pb_exit.py
sort immédiatement !
Avec python 2.6 :
python -i pb_exit.py Traceback (most recent call last): File "pb_exit.py", line 2, in <module> sys.exit(0) SystemExit: 0 >>>
Cela semble effectivement le bon comportement puisque l'on a demandé "-i" ... Mais je cherche un moyen de faire sortir de l'interpréteur depuis le fichier pb_exit.py ... et je ne trouve pas.
Merci de votre aide,
K.
Kobayashi a écrit :
Bonjour à tous,
Soit le fichier pb_exit.py qui contient deux lignes :
import sys
sys.exit(0)
try:
sys.exit(0)
except SystemExit:
import os, signal
os.kill(os.getpid(), signal.SIGQUIT)
pass
Mais :
1. Ça écrit : "Quit"
2. C'est pas portable
3. Qu'est que c'est moche !!
K.
Pour python < 2.6 :
python -i pb_exit.py
sort immédiatement !
Avec python 2.6 :
python -i pb_exit.py
Traceback (most recent call last):
File "pb_exit.py", line 2, in <module>
sys.exit(0)
SystemExit: 0
>>>
Cela semble effectivement le bon comportement
puisque l'on a demandé "-i" ... Mais je cherche
un moyen de faire sortir de l'interpréteur depuis
le fichier pb_exit.py ... et je ne trouve pas.
Soit le fichier pb_exit.py qui contient deux lignes :
import sys sys.exit(0)
try: sys.exit(0) except SystemExit: import os, signal os.kill(os.getpid(), signal.SIGQUIT) pass
Mais :
1. Ça écrit : "Quit" 2. C'est pas portable 3. Qu'est que c'est moche !!
K.
Pour python < 2.6 :
python -i pb_exit.py
sort immédiatement !
Avec python 2.6 :
python -i pb_exit.py Traceback (most recent call last): File "pb_exit.py", line 2, in <module> sys.exit(0) SystemExit: 0 >>>
Cela semble effectivement le bon comportement puisque l'on a demandé "-i" ... Mais je cherche un moyen de faire sortir de l'interpréteur depuis le fichier pb_exit.py ... et je ne trouve pas.
try: sys.exit(0) except SystemExit: import os, signal os.kill(os.getpid(), signal.SIGQUIT) pass
Je ne vois toujours pas à quoi cela peut être utile, mais, au cas où, essaie os._exit(0) au lieu de sys.exit(0)
-- Alain.
Kobayashi
Alain Ketterlin a écrit :
Kobayashi writes:
import sys sys.exit(0)
Pour python < 2.6 :
python -i pb_exit.py
sort immédiatement !
Avec python 2.6 :
python -i pb_exit.py Traceback (most recent call last): File "pb_exit.py", line 2, in <module> sys.exit(0) SystemExit: 0 Cela semble effectivement le bon comportement puisque l'on a demandé "-i" ... Mais je cherche un moyen de faire sortir de l'interpréteur depuis le fichier pb_exit.py ... et je ne trouve pas.
J'ai l'impression que le but de -i est justement de te permettre d'utiliser l'interpréteur après l'exécution du script (le comportement pre-2.6 est incorrect de ce point de vue). Je ne comprends donc pas ce que tu veux : passer en interactif ou quitter tout avec exit ? Si tu veux passer en interactif dans certains cas mais pas dans d'autres, j'ai peur que ce ne soit pas prévu, -i étant justement prévu pour toujours te donner la main.
-- Alain.
Bonjour Alain,
J'ai un programme prog.py qui lance plein de serveurs (corba) et qui fait plein de choses super bien ... On le lance avec -i pour pouvoir, pendant la phase interactive, interagir avec les serveurs, en lancer d'autres, ...
Lorsque l'utilisateur quitte l'interpréteur, tout s'éteint.
Pour éviter que l'utilisateur tape : python -i prog.py [args] on a créé un alias prog = "python -i prog.py"
Pour avoir les options possibles de prog, l'utilisateur tape donc prog -h ... le code code traite les arguments en utilisant optparse, le module optparse voie "-h" et lance sys.exit(0).
Jusque maintenant (python < 2.6), cela suffisait à sortir de l'interpréteur ... plus maintenant.
Voila l'explication de la demande ...
K.
Alain Ketterlin a écrit :
Kobayashi <kobayashi@netcourrier.com> writes:
import sys
sys.exit(0)
Pour python < 2.6 :
python -i pb_exit.py
sort immédiatement !
Avec python 2.6 :
python -i pb_exit.py
Traceback (most recent call last):
File "pb_exit.py", line 2, in <module>
sys.exit(0)
SystemExit: 0
Cela semble effectivement le bon comportement puisque l'on a demandé
"-i" ... Mais je cherche un moyen de faire sortir de l'interpréteur
depuis le fichier pb_exit.py ... et je ne trouve pas.
J'ai l'impression que le but de -i est justement de te permettre
d'utiliser l'interpréteur après l'exécution du script (le comportement
pre-2.6 est incorrect de ce point de vue). Je ne comprends donc pas ce
que tu veux : passer en interactif ou quitter tout avec exit ? Si tu
veux passer en interactif dans certains cas mais pas dans d'autres, j'ai
peur que ce ne soit pas prévu, -i étant justement prévu pour toujours te
donner la main.
-- Alain.
Bonjour Alain,
J'ai un programme prog.py qui lance plein de serveurs (corba)
et qui fait plein de choses super bien ... On le lance avec -i
pour pouvoir, pendant la phase interactive, interagir avec les
serveurs, en lancer d'autres, ...
Lorsque l'utilisateur quitte l'interpréteur, tout s'éteint.
Pour éviter que l'utilisateur tape : python -i prog.py [args]
on a créé un alias prog = "python -i prog.py"
Pour avoir les options possibles de prog, l'utilisateur tape
donc prog -h ... le code code traite les arguments en utilisant
optparse, le module optparse voie "-h" et lance sys.exit(0).
Jusque maintenant (python < 2.6), cela suffisait à sortir
de l'interpréteur ... plus maintenant.
python -i pb_exit.py Traceback (most recent call last): File "pb_exit.py", line 2, in <module> sys.exit(0) SystemExit: 0 Cela semble effectivement le bon comportement puisque l'on a demandé "-i" ... Mais je cherche un moyen de faire sortir de l'interpréteur depuis le fichier pb_exit.py ... et je ne trouve pas.
J'ai l'impression que le but de -i est justement de te permettre d'utiliser l'interpréteur après l'exécution du script (le comportement pre-2.6 est incorrect de ce point de vue). Je ne comprends donc pas ce que tu veux : passer en interactif ou quitter tout avec exit ? Si tu veux passer en interactif dans certains cas mais pas dans d'autres, j'ai peur que ce ne soit pas prévu, -i étant justement prévu pour toujours te donner la main.
-- Alain.
Bonjour Alain,
J'ai un programme prog.py qui lance plein de serveurs (corba) et qui fait plein de choses super bien ... On le lance avec -i pour pouvoir, pendant la phase interactive, interagir avec les serveurs, en lancer d'autres, ...
Lorsque l'utilisateur quitte l'interpréteur, tout s'éteint.
Pour éviter que l'utilisateur tape : python -i prog.py [args] on a créé un alias prog = "python -i prog.py"
Pour avoir les options possibles de prog, l'utilisateur tape donc prog -h ... le code code traite les arguments en utilisant optparse, le module optparse voie "-h" et lance sys.exit(0).
Jusque maintenant (python < 2.6), cela suffisait à sortir de l'interpréteur ... plus maintenant.