Python os module open file above current directory with relative path Python os module open file above current directory with relative path python python

Python os module open file above current directory with relative path


The path given to open should be relative to the current working directory, the directory from which you run the script. So the above example will only work if you run it from the cgi-bin directory.

A simple solution would be to make your path relative to the script. One possible solution.

from os import pathbasepath = path.dirname(__file__)filepath = path.abspath(path.join(basepath, "..", "..", "fileIwantToOpen.txt"))f = open(filepath, "r")

This way you'll get the path of the script you're running (basepath) and join that with the relative path of the file you want to open. os.path will take care of the details of joining the two paths.


This should move you into the directory where the script is located, if you are not there already:

file_path = os.path.dirname(__file__)if file_path != "":    os.chdir(file_path)open("../../fileIwantToOpen.txt","r")