Use something like:
import argparse def main(): parser = argparse.ArgumentParser() parser.add_argument("-i", "--ifile", dest='original_filename', help="Filename where headers are to be replaced", action="store") parser.add_argument("-b", "--bfile", dest='replace_original_filename', help="Filename containing body", action="store") parser.add_argument("-o", "--ofile", dest='out_filename', help="Output filename", action="store") args = parser.parse_args() print('original_filename: {}'.format(args.original_filename)) print('replace_original_filename: {}'.format(args.replace_original_filename)) print('out_filename: {}'.format(args.out_filename)) if __name__ == '__main__': main()test from command line with:
python TestArgs.py -i 'Myinput1.txt' -b 'MyInput2.txt' -o 'Myoutput.txt'results:
Output:λ python TestArgs.py -i 'Myinput1.txt' -b 'MyInput2.txt' -o 'Myoutput.txt'
original_filename: 'Myinput1.txt'
replace_original_filename: 'MyInput2.txt'
out_filename: 'Myoutput.txt'
or with help (-h):Output:λ python TestArgs.py -h
usage: TestArgs.py [-h] [-i ORIGINAL_FILENAME] [-b REPLACE_ORIGINAL_FILENAME]
[-o OUT_FILENAME]
optional arguments:
-h, --help show this help message and exit
-i ORIGINAL_FILENAME, --ifile ORIGINAL_FILENAME
Filename where headers are to be replaced
-b REPLACE_ORIGINAL_FILENAME, --bfile REPLACE_ORIGINAL_FILENAME
Filename containing body
-o OUT_FILENAME, --ofile OUT_FILENAME
Output filename