社内SEの話

日々起きたことの記録用

【Python】_exit() missing required argument 'status' (pos 1) 発生

↓プログラミングで副業を考えたらこちら↓

はじめに

Pythonで何らかの条件になったらプログラムをすべて終了させたい時がしばしば発生します。
しかしexit()だけではエラーになり正しく終了できず、勘所がわからないと沼にハマってしまいます。
Pythonでは複数の終了関数が用意されていますが、今回はその種類や終了プロセスについては割愛します。
各自どの終了関数がどういう動作をするかは調べてください。

引数は必ず数値

exit()やos._exit()のみで実行すると下記のエラーが発生します

_exit() missing required argument 'status' (pos 1)  

またサイトなどを見ると

os.(status=None)  

のようにステータスを入れているケースもあります。
exitの引数はInt型で返す必要があります。
引数を指定しなかったり、その他の引数を渡すとエラーになります。

解決策

exit(0)
os._exit(0)

と記述すると正常に終了できます。