On 11/01/2011 10:05 AM, Hugo Arts wrote:
On Tue, Nov 1, 2011 at 2:48 PM, Jefferson Ragot<jbr5...@gmail.com>  wrote:
In a Vista command prompt if I typed this:

         >>>  python  somescript.py  filename

Will sys.argv[1] return a valid path or just the filename?
If it just returns the filename, is there a simple way to get the path?

sys.argv contains exactly what you typed in on the command line.
Nothing more, nothing less. It doesn't care whether what you typed is
actually a filename or a plain number or some string, it just passes
the commands as they are.

You can use the os.path.abspath() function on your argument, that will
probably do what you want.

HTH,
Hugo

That's very helpful, but let me add a caveat:

The operating system shell may modify that command line before handing it to Python. i don't believe that happens in Vista, however. Watch out for quotes and such, they may be eaten by the c runtime. And if you were on Linux, a filename with wildcards could get expanded into several argv[] items.

--

DaveA

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to