Привет, дружище питонисты,Комплексный модуль импорта с помощью Python
У меня есть расширенный иерархии папок и вложенных папок питона сценариев. Из любого сценария мне нужно иметь возможность импортировать любой другой скрипт python внутри любой из этих других папок. Я создал папки как пакеты, потому что это был рекомендуемый способ для импорта на многие сайты.
Первый «партизанский» путь, который я осуществил, и это работает следующий образом: 1. Я создал paths.py файл, в котором я добавляемый к sys.path каждой новой папки.
import sys
import platform
if platform.system() == 'Linux':
python_path = '/var/lib/jenkins/jobs/QA/workspace/Site'
else:
python_path = 'C:/Python27/projects/QA/Site'
#ACADEMIES
sys.path.insert(1, python_path + '/Academies/Tests')
sys.path.insert(2, python_path + '/Academies/Suites')
sys.path.insert(3, python_path + '/Academies/inc')
sys.path.insert(35, python_path + '/Academies/Academy_wall')
2.Inside каждый файл я импортирующей так:
Как вы можете видеть PyCharm жалуется на импорт; однако, когда я запускаю его, он работает.
Возможно ли иметь файл paths.py
, который импортирует все различные пакеты там и для всех других сценариев, чтобы просто позвонить import paths
, а затем импортировать только те файлы, которые мне нужны, как сейчас? По сути, я хочу сделать то же самое, что и я, более элегантным и понятным способом.
Заранее благодарен!
Это должно быть возможно, если вы идете 'os.chdir (somePath) 'вы сможете импортировать вещи из' somePath'. Вы можете хранить пути, где живут разные сценарии, и просто «chdir», чтобы вам было нужно. Так или иначе, я это делаю. Это не очень элегантно, но работает. Также 'os.walk' может быть полезен, если вы хотите импортировать все сразу. –