How to make python scripts .py executable, not bring up editor
norseman at hughes.net
Tue Jul 8 19:36:09 CEST 2008
In Windows use the Window Explorer and go find a something.py.
Right click on it and select Open With then Browse and go find your
Python24\python.exe and select it. Then check the box that says "Always
use this for..." and test it by closing/re-opening WinExplorer and left
clicking (or double clicking if so set) and it should attempt to run.
IF so then use the 'dos window' and try typing in just it's name.
ie... tryme.py this should attempt to run also. If not, check the
C:\autoexec.bat PATH line. It just might be that it has the unwanted
Python editor's path there. If so, consider putting your python24 path
BEFORE it. (Don't forget to re-boot after mods to autoexec.bat) If that
isn't the problem you might consider a complete scrub, reformat and
re-install of Windows and ALL your stuff. (Uggg!)
Don't be surprised if at some point it may "reset itself" back to it's
current bad behavior. The Python editor shouldn't unless it is
re-installed for some reason.
The use of the bat file ignores any 'self reset' nonsense by forcing the
desired action(s) by keeping Windows from wandering about. During the
development cycle a modified copy in the working directory can delete
program created files before (re)running script. This keeps Microsoft
from yelling it can't function because something is in it's way. And
hardcoding the file under development, along with any needed tokens,
simplifies the command line and the cycle.
( del any files created in this loop (one line each)
( drive:\path_to\python pgm.py token tokens.....
( don't remember if pause or whatever - but give time to inspect screen
( preferred_editor pgm.py
if in t.bat then t<cr> tests it and returns you to edit.
Saves lots of typos, lowers anxiety, speeds up cycle, increases
confidence in progress.
NOTE: I use Linux and I do have a typo in my original reply.
USE %1 NOT %f in the .bat file. Sorry
norseman at hughes.net
David Eynon wrote:
> When my anyname.py runs, instead of executing the script, it opens up
> the file within the Pythonwin text editor.
> On Mon, Jul 7, 2008 at 9:00 PM, norseman <norseman at hughes.net> wrote:
>> korean_dave wrote:
>>>> From command Prompt, i type in a script, "tryme.py".
>>> This, instead, brings up PythonWin editor and Interactive Window.
>>> Path variable is "C:\Python24". (I need Python 2.4 installed, not 2.5)
>>> How do I make it so that the script runs?
>> I get tired of Microsoft jerking me around too. Rather than spend hours
>> trying to undo somebody's reorganizing my system preferences I just ignore
>> them completely.
>> py tryme is how I do it.
>> py.bat is a file placed in a directory listed in PATH in autoexec.bat. Edit
>> autoexec.bat to include directory you put it in and reboot system or it
>> won't find it. something like: PATH=.;c:\py-stuff;[anything already
>> listed] Don't forget the semicolons.
>> The . (period) up front means look here first. here being where ever you are
>> when you issued the command. (The pRESENT wORKING dIRECTORY :-) The
>> c:\py-stuff (fix to suit yourself and make sure it exists) is where you can
>> put your efforts to be called at your leisure. Your .py files you write and
>> use. Even the py.bat can go there.
>> (Short note: Microsoft usually does look in pwd first. But good form
>> dictates being specific.)
>> contents of py.bat:
>> rem name: py.bat
>> @echo off
>> c:\Python24\python %f.py make it fit your path
>> rem end of file
>> This way - you get what you expect, when you expect it, & nothing else.
>> Yeah - dumb, but it works! I have one similar for each of my compilers.
>> They contain the whole command line switches stuff as well as things like
>> remove old stuff before trying to over write with new since MS can be
>> temperamental about that.
>> Easiest way in the world to give it the finger and make it behave.
>> norseman at hughes.ney
More information about the Python-list