I've seen people suggesting sys.exit() in Python. My question is that, is there any other way to exit the execution of current script, I mean termination, with an error.
Something like this:
sys.exit("You can not have three process at the same time.")
Currently my solution would be:
print("You can not have three process at the same time.")
sys.exit()
try: int("string") #the code that raises the error except ValueError: raise ValueError("Your custom message here.")
You can use sys. exit() to exit from the middle of the main function. However, I would recommend not doing any logic there. Instead, put everything in a function, and call that from __main__ - then you can use return as normal.
Calling sys.exit
with a string will work. The docs mention this use explicitly:
In particular, sys.exit("some error message") is a quick way to exit a program when an error occurs.
There are 3 approaches, the first as lvc mentioned is using sys.exit
sys.exit('My error message')
The second way is using print
, print can write almost anything including an error message
print >>sys.stderr, "fatal error" # Python 2.x
print("fatal error", file=sys.stderr) # Python 3.x
The third way is to rise an exception which I don't like because it can be try-catch
raise SystemExit('error in code want to exit')
it can be ignored like this
try:
raise SystemExit('error in code want to exit')
except:
print("program is still open")
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With