Python, импорт из другой папки

02.10.2021

В случаях, когда в программу на Python необходимо импортировать пакет, находящийся в произвольной папке, можно воспользоваться добавлением пути к этой папке в список системных директорий c помощью sys.path.insert:

import sys

sys.path.insert(1, 'path')
import package_name

Для примера рассмотрим следующую структуру проекта:

project/
  web/
    app.py
  lib/
    mylib.py

Для импорта mylib.py в app.py:

import sys

sys.path.insert(1, '../lib')
import mylib

Альтернативным способом является использование sys.path. Например, для добавления родительской папки:

import sys

sys.path.append('..')

import package_from_parent_dir