我实现了一个名为myutils的包,它由文件夹“myutils”、文件“init.py”和许多名为的*.py文件组成!=“myutils”。这个包包含在myotherproject.py中,在我从eclipse运行它们时可以找到/使用。
但是,当我在myotherproject.py上运行py2exe时,生成的exe找不到此模块(错误消息“importerror:no module named myutils”)。已修剪的my setup.exe版本:

from distutils.core import setup
import py2exe, sys
sys.path.append(pathTo_myUtils)
import myUtils # this line works fine even if I comment out sys.path.append(...)
data_files_ = (('.', ["C:\\Python27\\DLLs\\MSVCP90.dll",
                      "C:\\Python27\\lib\\site-packages\\Pythonwin\\mfc90.dll"]))
setup(windows=['myOtherProject.py'], options={'py2exe': {'excludes': ['tcl'], 'includes': ['myUtils'], 'dll_excludes': ['tk85.dll',  'tcl85.dll'] }}, data_files=data_files_)

我该怎么解决?我在winxp上使用python 2.7。

最佳答案

sys.path.append()行放在import语句之前。更好的方法是,修改你的pythonpath(我不知道如何在windows上实现,但我相信google可以告诉你如何实现)

10-07 18:44