現在、私はこれをWindowsで実行しています:
args = ['start', windowname, 'python', '-i', myscript]
subprocess.Popen(args, shell=True)
ご覧のとおり、Python の対話モードで myscript を実行するサブプロセスを起動します。私の場合、これは、スクリプトが終了すると、エラーが発生したか正常に完了したかに関係なく、ウィンドウ/シェルが開いたままになることを意味します。ただし、myscript がエラーになったときにウィンドウが開いたままになり、myscript が正常に実行されたときにウィンドウが閉じられるようにしたいと考えています。
私がこれを行っている理由は、エラーとエラーに至るまでの出力を見たいからです.ウィンドウと出力を視覚的に見る方が簡単なので、何らかの形式のログを使用したくない.
やり取りしているプロセスはpythonではなくstart/cmdであるため、リターンコードを確認できないと思います。私が間違っている場合は、私を修正してください!
ありがとう!