Еще один разработчик и я не согласен с тем, следует ли использовать PYTHONPATH или sys.path, чтобы позволить Python находить пакет Python в каталоге пользователя (например, разработки).
У нас есть проект Python с типичной структурой каталогов:
Project
    setup.py
    package
        __init__.py
        lib.py
        script.py
В script.py нам нужно сделать import package.lib. Когда пакет устанавливается в сайтах-пакетах, script.py может найти package.lib.
Однако при работе с каталогом пользователей необходимо сделать что-то еще. Мое решение - установить PYTHONPATH для включения "~/Project". Другой разработчик хочет поместить эту строку кода в начало script.py:
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
Итак, Python может найти локальную копию package.lib.
Я думаю, что это плохая идея, так как эта строка полезна только для разработчиков или людей, работающих из локальной копии, но я не могу дать веских оснований, почему это плохая идея.
Должны ли мы использовать PYTOHNPATH, sys.path или либо отлично?
