Это круговой импорт выпуск.
Пояснение:
Вы начинаете с запуска импорта модуля databaseManager
.
Во время этого databaseManager
код начинает импортировать excel
.
Во время импорта excel
код excel
пытается получить функцию searchInDbAll()
из databaseManager
. Но в этот момент эта функция не существует - потому что databaseManager
находится в процессе импорта excel
, и он не начал определять какие-либо функции.
Как исправить:
В модулях, где существуют циклические конфликты импорта, импортируйте модули вместо функций. Например, измените это:
from modules.excel import showExcelDirContents
к этому:
from modules import excel
И, конечно, вы должны затем изменить соответствующие вызовы функций с showExcelDirContents()
на excel.showExcelDirContents()
.
Вы должны сделать это в своих модулях databaseManger
, excel
и sync
. С этим исправлением я действительно смогу запустить твой код.
И да, удалить добавляет к sys.path, это неправильно