Python to .bat conversion


Question

I would like a user on Windows to be able to run my Python program, so I want to convert it to a .bat file. Is there a way to convert it? I've tried searching, but didn't find anything.

1
1
11/1/2012 2:46:10 PM

Accepted Answer

Unless your script is trivial it will not be possible to 'translate' it into a batch file. However two options exist:

  • Create a batch file to run the python script
  • Attempt to compile the script into an executable

The first option is trivial. Simply create a batch file as so:

@ECHO OFF
PATH_TO_PYTHON\python.exe PATH_TO_SCRIPT.py

If you are in a corporate environment you could put a python installation on a network and create a batch file to run the script from there. Otherwise you will need the user to install python. If python is on their path then the batch file can be simplified to:

@ECHO OFF
python PATH_TO_SCRIPT.py

Alternatively, there are options available that attempt to compile scripts into .exe files. I've never had any success with them, but py2exe seems the most common.

2
11/1/2012 3:00:16 PM

No, I don't think you can reasonably expect to do this.

Batch files are executed by the Windows command interpreter, which is way way more primitive.

Python is a full-blown programming language with a rich and powerful library of standard modules for all sorts of tasks. All the Windows command interpreter can do is act like a broken shell.

On the other hand, Python is available on Windows, so just tell the user to install it and run your program directly.


Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon