On 06/25/2013 09:55 AM, Peter Otten wrote:
Marco Perniciaro wrote:

Hi,
I've been working with Python for a long time.
Yet, I came across an issue which I cannot explain.

Recently I have a new PC (Windows 7).
Previously I could call a Python script with or without the "python" word
at the beginning. Now the behavior is different if I use or not use the
"python" prefix!

I only have Python 2.7 installed and the path in in my environment
variable. I create a simple file called "example.py" which contains two
lines:

       import sys
       print sys.argv

This is the output result:

       C:\Users\mapr>example.py a b c
       ['C:\\Users\\mapr\\example.py']

       C:\Users\mapr>python example.py a b c
       ['example.py', 'a', 'b', 'c']

Can someone please explain?

I'm not a Windows user, but I'd try

http://docs.python.org/2/using/windows.html#executing-scripts

with python.exe instead of pythonw.exe. Maybe the %* is missing.


I'm not a Windows user either (at least for quite a while). But I'd investigate with assoc and ftype and see that the ftype includes the trailing %* parameter. Do not mess with .pyw and pythonw, as they are both for GUI programs, and you're doing a console program.

I think if you type ftype it'll list them all. So if you grep that, you should be able to find the line for Python.File And yeah, you can probably tell ftype to just display that line, but I don't have a system to try it on, or even to use /? on, so I'm not going to issue unsafe advice.

If the ftype and/or assoc are incorrect, I've been told that it should be fixed in the registry, not using those two commands. Something about applying to all users instead of just the currently logged in one. But I'd have to experiment to figure out just how, and I don't have common access to such a system.


--
DaveA
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to