#python
#python
Вопрос:
Я не понимаю, что делает приведенный ниже код.
from os import path
import sys
sys.path.append(path.abspath('../ProgA'))
Комментарии:
1. Прочитал документы для
sys.path
?
Ответ №1:
from os import path
импортирует путь из модуля ос
это используется в строке 3
import sys
импортирует модуль sys
sys.path.append(path.abspath('../ProgA'))
Эта строка довольно сложная, поэтому я ее разберу
path.abspath() принимает относительный путь (из файла, выполняющего код) и предоставляет вам абсолютный путь к этому
например, если вы находитесь в каталоге /home/user /adi /documents и вызываете path.abspath(‘../progA’), то .. означает, что вы переходите в каталог a, затем ищете каталог с именем progA, поэтому конечным путем будет /home/user /adi /progA
sys.path — это просто место, где python ищет импорт, это по умолчанию в ваших пакетах сайта, но вы редактируете эту переменную
TLDR; код добавляет каталог ../progA к вашему sys.path, чтобы вы могли импортировать модули из каталога
Комментарии:
1. итак, в принципе, это может быть полезно, если scriptA находится в папке проекта, отличной от scriptB, и мне нужно импортировать scriptB в scriptA, и я не могу просто сделать это с помощью «import scriptB»?