Passing parameters at the command line (New Python User)

cjt22 at bath.ac.uk cjt22 at bath.ac.uk
Mon Sep 24 04:04:58 EDT 2007


Hi there. I just wondered whether anyone could recommend the correct
way I should be passing command line parameters into my program. I am
currently using the following code:

def main(argv = None):


    file1=  "directory1"
    file2 =  "directory2"


    if argv is None:
        args = sys.argv[1:]

    if len(args) == 0:
        Initialise.init(0)
        Process.processCon(file1, 0)
        Output.print()

    for i in range(len(args)):
        if args[i] == "-no":
            Initialise.init(0)
            Process.processCon(file2,1)
            Output.print()

        if args[i] == "-not":
           Initialise.init(1)
            Process1.process(stepStore, firstSteps)
            Output.print1()



if __name__ == "__main__":
    main()


Have I used bad syntax here so that a user can either run the program
with commands:
main.py
main.py -no
main.py -not

If I also wanted an option file to be passed in at the command line
for 'main.py' and 'main.py -no' what would be the best way to go about
this? I have never used Python to pass in arguments at the command
line so any help would be much appreciated.

Cheers
Chris




More information about the Python-list mailing list