-4

Now I want to run my program "python a.py x y".

Here x and y are my paraters, so how could I get the input into the program?

Thank you

Sihan Wang
  • 197
  • 1
  • 2
  • 13

2 Answers2

1
import sys


def some_function_in_your_code(x):
    print("the filename of this program is:", x)



if __name__ == "__main__":
    print sys.argv # this object will have all of your arguments in it
    print sys.argv[0] # this is alwys the name/path? of the python file
    some_function_in_your_code(sys.argv[0])

so using your example, if you passed in "x y" into your program, sys.argv would be a list 3 items long like this: ['the/path/to/the/program/a.py', 'x', 'y']

TehTris
  • 3,139
  • 1
  • 21
  • 33
1

you need to look on sys.argv:

sys.argv

The list of command line arguments passed to a Python script. argv[0] is the script name (it is operating system dependent whether this is a full pathname or not). If the command was executed using the -c command line option to the interpreter, argv[0] is set to the string '-c'. If no script name was passed to the Python interpreter, argv[0] is the empty string.

To loop over the standard input, or the list of files given on the command line, see the fileinput module.

Community
  • 1
  • 1
Hackaholic
  • 19,069
  • 5
  • 54
  • 72