Прежде всего, я хочу сказать, что, хотя этот вопрос кажется дубликатом другого, я думаю, что они не касаются одного и того же, и я думаю, что проблема этого другого вопроса отличается от моей. В любом случае, я думаю, что еще одно объяснение такого рода ошибок было бы полезным для сообщества.
import sys
sys.path.append("../CREDENTIALS")
sys.path.append("./SDK")
import consts
import client
import account_api as account
import futures_api as future
import lever_api as lever
import spot_api as spot
import swap_api as swap
import index_api as index
import option_api as option
import system_api as system
import information_api as information
import json
import datetime
import TOKENS
Эти импорты находятся в начале myprogram.py. Это мое сообщение об ошибке: PS C:\MYPROJECTPATH\MYPROJECT> python .\myprogram.py Трассировка (последний последний вызов): Файл "C:\MYPROJECTPATH\MYPROJECT\myprogram.py", строка 5, в клиентском файле импорта " ./SDK\client.py", строка 3, из . импортировать константы как c, utils, исключения ImportError: попытка относительного импорта без известного родительского пакета
Проблема в том, что импорт в подкаталог в Python не так прост, как в других языках. Есть несколько способов сделать это, в вашем случае должно работать что-то вроде этого:
Создайте
__init__.py
пустой файл в подкаталоге SDK (я вижу, что он уже там)И вы бы сделали импорт следующим образом: