On Jul 24, 4:31 pm, Ian Kelly <ian.g.ke...@gmail.com> wrote: > On Tue, Jul 24, 2012 at 1:57 PM, Wanderer <wande...@dialup4less.com> wrote: > > If I use the code > > > assert False, "unhandled option" > > > I get output like: > > > option -q not recognized > > for help use --help > > > What other expressions can I use other than "unhandled option"? Is there a > > list somewhere? > > Are you using argparse or optparse or getopt or something else > altogether? And where are you placing this assert? It would be > helpful to see some actual code to understand what you are doing. > > And by the way, assert is a very bad way to check user input or to > unconditionally raise an exception. The reason is that if Python is > invoked with -O, then all assertions are removed from the compiled > bytecode, and then your unconditional exception code doesn't raise any > exception at all. If you want to raise an exception, just do it: > > raise Exception("unhandled option") > > Ideally, you would also subclass Exception to create a more specific > exception class for your custom exception: > > class UnhandledOptionException(Exception): > pass > > # Then, later on... > > raise UnhandledOptionException("-q")
I left out the Usage class class Usage(Exception): def __init__(self, msg): self.msg = msg -- http://mail.python.org/mailman/listinfo/python-list