Python эквивалент магической константы PHP __DIR__?
В PHP __DIR__
Волшебная константа вычисляет путь к каталогу, содержащему файл, в котором эта константа появляется.
Есть ли в Python эквивалентная функция?
2 ответа
Решение
os.path.dirname(__file__)
Обратите внимание, что __file__
относится к расположению файла относительно cwd во время импорта модуля. Если вы позвоните chdir
, информация будет потеряна. Если это становится проблемой, вы можете добавить следующее в корень вашего модуля:
import os.path
_dir = os.path.dirname(os.path.abspath(__file__))
from pathlib import Path
Path(__file__).cwd()
на данный момент я использую python 3.10.2 и он работает
Pathlib против ОС
Модуль os представляет пути в виде строк, с которыми мало что можно сделать. Модуль pathlib представляет пути как специальные объекты с полезными методами и атрибутами.
https://builtin.com/software-engineering-perspectives/python-pathlib