- Notifications
You must be signed in to change notification settings - Fork 0
Command Line Arguments
import sys # the first argument is the name of the file args = sys.argv[1:] http://www.tutorialspoint.com/python/python_command_line_arguments.htm
getopt.getopt(args, options, [long_options])
-
args: This is the argument list to be parsed.
-
options: This is the string of option letters that the script wants to recognize, with options that require an argument should be followed by a colon (:).
-
long_options: This is optional parameter and if specified, must be a list of strings with the names of the long options, which should be supported. Long options, which require an argument should be followed by an equal sign ('='). To accept only long options, options should be an empty string.
-
This method returns value consisting of two elements: the first is a list of (option, value) pairs. The second is the list of program arguments left after the option list was stripped.
-
Each option-and-value pair returned has the option as its first element, prefixed with a hyphen for short options (e.g., '-x') or two hyphens for long options (e.g., '--long-option').
#!/usr/bin/python import sys, getopt def main(argv): inputfile = '' outputfile = '' try: opts, args = getopt.getopt(argv,"hi:o:",["ifile=","ofile="]) except getopt.GetoptError: print 'test.py -i <inputfile> -o <outputfile>' sys.exit(2) for opt, arg in opts: if opt == '-h': print 'test.py -i <inputfile> -o <outputfile>' sys.exit() elif opt in ("-i", "--ifile"): inputfile = arg elif opt in ("-o", "--ofile"): outputfile = arg print 'Input file is "', inputfile print 'Output file is "', outputfile if __name__ == "__main__": main(sys.argv[1:]) Convert the list of [opt, arg] tuples into a dictionary:
opt_dict = dict(opts) Yes, that simple...
https://docs.python.org/2/library/getopt.html
https://docs.python.org/2/library/argparse.html#module-argparse
https://docs.python.org/2/howto/argparse.html
https://docs.python.org/2/howto/argparse.html
https://pymotw.com/2/argparse/
https://mkaz.tech/python-argparse-cookbook.html
https://argparse.googlecode.com/svn/trunk/doc/add_argument.html