Я пишу фрагмент кода Python, который требует чтения файла из относительной позиции самого скрипта.
Это структура папок:
.
+-- cache
| +-- ..
| +-- population.json
+-- src
| +-- ..
| +-- script.py
+-- ..
I пробовал что-то вроде этого:
folder = os.path.dirname(os.path.realpath("__file__"))
path = os.path.join(folder, "..{0}cache{1}population.json".format(os.path.sep, os.path.sep))
with open(path) as f:
population = load(f)
Проблема в том, что folder
всегда устанавливается в текущую папку, из которой я вызываю скрипт.
Итак, как я могу это исправить, чтобы читать файлы независимо от того, откуда я вызываю скрипт?