Please avoid the extra `else`. Since the boolean logic is inverted (`non_essential` / `essential`) I would also flip the if / else parts like this:

    if args.non_essential:
        sys.exit(0)
    raise