Ответ 1
Кажется, что в mf3.py вы импортируете за верхний уровень.
Предположим, что ваша структура проекта выглядит следующим образом:
folder/
main.py
mod/
__init__.py
components/
__init__.py
expander.py
language_id.py
utilities/
__init__.py
functions.py
Сначала убедитесь, что
main.py относится к подпакетам как:
from mod.components.expander import * from mod.utilities.functions import *
expander.py и language_id.py имеют доступ к функциям .py с помощью:
from ..utilities.functions import *
Добавить параметры в setup.py
Вы также можете использовать дополнительные параметры py2exe, чтобы импортировать все модули и пакеты, необходимые вашему проекту. Например.
# setup.py
from distutils.core import setup
import py2exe
setup(console=["script.py"],
options={
"py2exe":{
"optimize": 2,
"includes": ["mf1.py", "mf2.py", "mf3.py"], # List of all the modules you want to import
"packages": ["package1"] # List of the package you want to make sure that will be imported
}
}
)
Таким образом вы можете принудительно импортировать отсутствующий script вашего проекта