Two Questions about Python on Windows

Ian Kelly ian.g.kelly at gmail.com
Thu Apr 3 18:41:31 EDT 2014


On Thu, Apr 3, 2014 at 2:15 PM, Mark Lawrence <breamoreboy at yahoo.co.uk> wrote:
> On 03/04/2014 18:54, Ian Kelly wrote:
>>
>>
>> On Apr 3, 2014 11:12 AM, "Walter Hurry" <walterhurry at gmail.com
>> <mailto:walterhurry at gmail.com>> wrote:
>>  >
>>  > Normally my Python development is done on FreeBSD and Linux. I know
>> that on *ix I simply have to make foo.py executable (the shebang line is
>> present, of course) to make it runnable.
>>  >
>>  > For my son's school assignment, I have to help him with Python for
>> Windows.
>>  >
>>  > As I understand it, on Windows a .py file is not executable, so I
>> need to run 'python foo py', or use a .pyw file.
>>  >
>>  > Question 1: Do I make a .pyw file simply by copying or renaming
>> foo.py to foo.pyw?
>>
>> Yes. The only distinction between .py and .pyw is that the Python
>> installer associates the former with Python.exe and the latter with
>> Pythonw.exe. Pythonw runs the script without creating a console window
>> for stdin/stdout.
>>
>
> Not with more modern versions of Python.
>
> c:\Users\Mark>assoc .py
> .py=Python.File
>
> c:\Users\Mark>ftype Python.File
> Python.File="C:\Windows\py.exe" "%1" %*

Which ultimately calls some version of python.exe.

> c:\Users\Mark>assoc .pyw
> .pyw=Python.NoConFile
>
> c:\Users\Mark>ftype Python.NoConFile
> Python.NoConFile="C:\Windows\pyw.exe" "%1" %*

Which ultimately calls some version of pythonw.exe.

I elided that detail because it wasn't relevant to the question at hand.



More information about the Python-list mailing list