from dials.util.options import OptionParser parser = OptionParser() parser.add_option("-f", "--file", dest="filename", help="input file name") parser.add_option("-v", "--verbose", action="store_true", dest="verbose", default=False, help="verbose output") (options, args) = parser.parse_args() if options.verbose: print "verbosity turned on" if options.filename: print "filename:", options.filename
from dials.util.options import OptionParser, flatten_exclusions def parse_command_line_args(): usage = "usage: %prog [options] FILES" parser = OptionParser(usage=usage, sort_options=True) parser.add_option("-e", "--exclude", dest="exclude", help="exclude images matching a pattern") parser.add_option("-r", "--reprocess", action="store_true", dest="reprocess", help="reprocess previously processed images") parser.add_option("-v", "--verbose", action="store_true", dest="verbose", help="verbose output") # Other command-line options go here options, args = parser.parse_args() if len(args) < 1: parser.error("At least one input file must be provided.") # Flatten and process exclusions exclude = [] if options.exclude: exclude = flatten_exclusions(options.exclude) # Other command-line options processing goes here return args, exclude, optionsThis is an example of a more complex `OptionParser` usage, where several command-line options are added and processed. In addition, a custom function (`flatten_exclusions`) is used to parse and process the `--exclude` option. In summary, the `dials.util.options` package and `OptionParser` class provide an easy and flexible way to parse command-line options and arguments in Python.