Using Python's os.path, how do I go up one directory? - TagMerge
4Using Python's os.path, how do I go up one directory?Using Python's os.path, how do I go up one directory?

Using Python's os.path, how do I go up one directory?

Asked 1 years ago
4 answers

os.path.abspath(os.path.join(os.path.dirname( __file__ ), '..', 'templates'))

As far as where the templates folder should go, I don't know since Django 1.4 just came out and I haven't looked at it yet. You should probably ask another question on SE to solve that issue.

You can also use normpath to clean up the path, rather than abspath. However, in this situation, Django expects an absolute path rather than a relative path.

For cross platform compatability, use os.pardir instead of '..'.

Source: link


To get the folder of a file just use:


To get a folder up just use os.path.dirname again


You might want to check if __file__ is a symlink:

if os.path.islink(__file__): path = os.readlink (__file__)

Source: link


If you are using Python 3.4 or newer, a convenient way to move up multiple directories is pathlib:

from pathlib import Path

full_path = "path/to/directory"
str(Path(full_path).parents[0])  # "path/to"
str(Path(full_path).parents[1])  # "path"
str(Path(full_path).parents[2])  # "."

Source: link


python-3.9.0.exe /quiet InstallAllUsers=1 PrependPath=1 Include_test=0
python-3.9.0.exe InstallAllUsers=0 Include_launcher=0 Include_test=0
    SimpleInstall=1 SimpleInstallDescription="Just for me, no test suite."
    <Option Name="InstallAllUsers" Value="no" />
    <Option Name="Include_launcher" Value="0" />
    <Option Name="Include_test" Value="no" />
    <Option Name="SimpleInstall" Value="yes" />
    <Option Name="SimpleInstallDescription">Just for me, no test suite</Option>
python-3.9.0.exe /layout [optional target directory]
nuget.exe install python -ExcludeVersion -OutputDirectory .
nuget.exe install pythonx86 -ExcludeVersion -OutputDirectory .

Source: link

Recent Questions on python

    Programming Languages