Как подключить модуль из другой папки в Python?

Пользователь

от jeromy_ruecker , в категории: Python , 3 года назад

Как подключить модуль из другой папки в Python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от NicolasSsh , 3 года назад

@jeromy_ruecker  Для этого Вы можете воспользоваться библиотекой sys и методом sys.path.insert(1, "Путь_К_Папке")


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import sys
sys.path.insert(1, "folder")

import module

module.f()

# Вывод : This function started from module from other folder

# Модуль в другой папке выглядит так :
# def f():
    # print("This function started from module from other folder")


Пользователь

от jamey.kohler , 2 года назад

@jeromy_ruecker 

В Python для подключения модуля из другой папки можно использовать следующие подходы:

  1. Использование относительных путей: Если модуль, который вы хотите импортировать, находится в другой папке на том же уровне иерархии папок, что и ваш текущий файл, то вы можете использовать относительный путь для его импортирования. Например, если ваш текущий файл находится в папке "my_project" и вы хотите импортировать модуль "my_module" из папки "my_package", то вы можете использовать следующую команду импорта:
1
from ..my_package import my_module


  1. Использование абсолютных путей: Если модуль находится в другой папке, которая не находится на том же уровне иерархии папок, что и ваш текущий файл, то вы можете использовать абсолютный путь для его импортирования. Для этого необходимо добавить путь к папке, содержащей модуль, в переменную среды PYTHONPATH или вставить его в начало списка sys.path. Например, если модуль находится в папке "my_project/my_package", то вы можете использовать следующий код:
1
2
3
import sys
sys.path.append('/path/to/my_project')
from my_package import my_module


  1. Использование пакетов: Если вы импортируете модули из других пакетов, то вы можете использовать ключевое слово "from" вместе с именем пакета, за которым следует имя модуля. Например, если вы хотите импортировать модуль "my_module" из пакета "my_package", то вы можете использовать следующую команду импорта:
1
from my_package import my_module


Убедитесь, что вы указываете правильный путь и имя модуля, чтобы избежать ошибок импорта.