Finding Script Directory
sholden at holdenweb.com
Wed Jul 7 16:17:07 CEST 2004
Peter Hansen wrote:
> Fuzzyman wrote:
>> What's the best, cross platform, way of finding out the directory a
>> script is run from ?
>> I've googled a bit, but can't get a clear answer.
> I've seen twenty threads on this and I still don't know/recall
> whether there's a clear answer. :-(
>> On sys.argv the docs say :
>> argv is the script name (it is operating system dependent whether
>> this is a full pathname or not).
>> So this doesn't seem to be the answer.
> Actually, it's all you've got to work with. On Linux and Windows,
> at least, it's got either just the script name, if you're running
> from the current directory, or a path (relative or absolute) to
> the directory where the script is run from. It's like this whether
> py2exe'd or not, too.
> __file__ could be of assistance, but it doesn't exist when
> you've py2exe the thing...
>> The script directory is always *somewhere* in sys.path - but not
>> always in position 0. If you use py2exe then sys.path is the
>> zipfile it does the imports from !!
> Yeah, sys.path isn't much good for this sort of thing.
Oh, come now, Peter, you've seen this problem solved more times than you
can shake a stick at. The required code is
import os.path, sys
How hard can that be to remember? Didn't realise you were getting so OLD
More information about the Python-list