Python эквивалент магической константы PHP __DIR__? - PullRequest
16 голосов
/ 20 июня 2011

В PHP магическая константа __DIR__ вычисляет путь к каталогу, содержащему файл, в котором появляется эта константа.

Есть ли в Python эквивалентная функция?

1 Ответ

27 голосов
/ 20 июня 2011
os.path.dirname(__file__)

В Python 3.4 и новее, вот и все - вы получаете абсолютный путь.

В более ранних версиях Python __file__ относится к расположению файла относительно cwd в время импорта модуля . Если вы позвоните chdir, информация будет потеряна. Если это становится проблемой, вы можете добавить следующее в корень вашего модуля:

import os.path
_dir = os.path.dirname(os.path.abspath(__file__))

Но опять же, если вы нацелены только на Python 3.4+, это больше не нужно.

...