2015-06-17 85 views
0

我制作了一个python脚本,用于计算目的,导入库,Tkinter,Pmw,sympy,数学,tkfiledialog,webbrowser。AttributeError:通过Pyinstaller将python脚本转换为EXE

现在,通过使用Pyinstaller将其转换为EXE应用程序。 当我运行它,它给人的错误:

WindowsError: [Error 3] The system cannot find the path specified: 'C:\\Python27\\Earthing\\dist\\Earthing\\Pmw/*.*' 

所以,我复制并粘贴在该位置的整个PMW目录。但是,这样做后,我得到的错误:

AttributeError: 'module' object has no attribute 'OptionMenu' 

现在,我该如何解决此错误?请帮我解决这个问题。

回答

1

我遇到了同样的问题。这是由于我称之为“动态导入”,主要是在PmwLoader.py(放在lib子文件夹中):PmwLoader加载所有文件,并且它们成为Pmw全局库的属性。

我找到的解决方案是手动删除所有想要的Pmw文件中的'import Pmw'行(我只使用了PmwComboBox和PmwScrolledFrame)。 PmwCombobox和PmwScrolledFrame尤其需要导入其他PMW文件,所以我不得不更换 进口PMW 通过

import PmwBase 
import PmwScrolledListBox 
import PmwEntryField 
import PmwTimeFuncs 

,然后做PmwScrolledListBox和PmwEntryFiled相同。

有趣的是解决了错误 - 很显然,用PmwBase.MegaWidget替换了很多MegaWidget,等等。

最终,它不会超过一个小时。

祝你好运! t。