dawnoflife
dawnoflife

Reputation: 1652

Sending arguments from Batch file to Python script

I'm running Python 3.2 on Win XP. I run a python script thru a batch file via this:

C:\Python32\python.exe test.py %1

%1 is an argument that i pass to do some processing in the python script.

I have 2 variables in the batch file that I also want to send as arguments to the python script.

set $1=hey_hi_hello

set $2=hey_hi

I want to be able to do something like this if possible:

C:\Python32\python.exe test.py %1 $1 $2

And then retrieve these argiments in the python script via sys.argv[2] and sys.argv[3]

Would appreciate any help with this. Thank you.

Upvotes: 18

Views: 65482

Answers (2)

Jia Gao
Jia Gao

Reputation: 1292

Another option is to write arguments right after the python script, following the example:

python your_script.py this that

If you are using Linux .sh file, remember to run dos2unix XXX.sh before you run: bash XXX.sh.

The reason, in a simple version, is that dos and unix use different newline breakers.

Upvotes: 0

Tim Henigan
Tim Henigan

Reputation: 62178

your_script.bat:

set VAR_1=this
set VAR_2=that

python your_script.py %1 %VAR_1% %VAR_2%

Upvotes: 21

Related Questions