how to get the path of a module (myself) ?
Carl Banks
pavlovevidence at gmail.com
Mon Jun 1 22:25:41 EDT 2009
On Jun 1, 4:46 pm, Stef Mientki <stef.mien... at gmail.com> wrote:
> MRAB wrote:
> > Stef Mientki wrote:
> >> hello,
>
> >> I've pictures stored in a path relative to my python source code.
> >> To get a picture, I need to know what path I'm on in each python module.
> >> I thought __file__ would do the job,
> >> but apparently I didn't read the documentation carefully enough,
> >> because file is the path to the module that called my module.
>
> >> Any ways to get the path of "myself" ?
>
> > I'm not sure what you mean. I just did a quick test.
>
> > # File: C:\Quick test\child.py
> > print "name is %s" % __name__
> > print "file is %s" % __file__
>
> > # File: C:\Quick test\parent.py
> > import child
>
> > print "name is %s" % __name__
> > print "file is %s" % __file__
>
> > # Output:
> > name is child
> > file is C:\Quick test\child.py
> > name is __main__
> > file is C:\Quick test\parent.py
>
> Yes, that's what I (and many others) thought,
> but now put your code in a file, let's say the file "test.py",
> and now run this file by :
> execfile ( 'test.py' )
How can you execfile test.py without knowing the path to it? Whatever
path you used to locate test.py is where the file is. If you're just
execfiling a bare filename, then it's in the current directory, so
just construct a relative pathname.
Carl Banks
More information about the Python-list
mailing list