If I have a file test.py
that resides in some directory, how can I find out from test.py
what directory it is in? os.path.curdir
will
os.path has lots of tools for dealing with paths and getting information about paths.
Particularly, you want:
os.path.abspath
the answer is to use:
__file__
which returns a relative path.
os.path.abspath(__file__)
can be used to get the full path.
import os
dirname, filename = os.path.split(os.path.abspath(__file__))
The answers so far have correctly pointed you to os.path.abspath
, which does exactly the job you requested. However don't forget that os.path.normpath and os.path.realpath
can also be very useful in this kind of tasks (to normalize representation, and remove symbolic links, respectively) in many cases (whether your specific use case falls among these "many" is impossible to tell from the scant info we have, of course;-).
Here's how to get the directory of the current file:
import os
os.path.abspath(os.path.dirname(__file__))