我是python的新手,我在linux机器上使用python和wxpython编写了脚本。现在我想将.py转换为.exe,我为此目的使用了cxfreeze。创建exe后面的步骤
$ python setup.py build
$ python setup.py install
$ python pip cxfreeze
$ cxfreeze script.py
但是当我在其他系统中执行“./script(the exe)”时,我收到此错误:
File "/usr/local/lib/python2.7/dist-packages/cx_Freeze/initscripts/Console.py", line 27, in <module>
File "script.py", line 3, in <module>
File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/__init__.py", line 45, in <module>
File "/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode/wx/_core.py", line 4, in <module>
File "ExtensionLoader_wx__core_.py", line 18, in <module>
ImportError: No module named None
答案 0 :(得分:0)
我只是尝试使用以下简单的wxPython应用程序在CentOS上使用cxfreeze:
import wx
########################################################################
class MyFrame(wx.Frame):
""""""
#----------------------------------------------------------------------
def __init__(self):
"""Constructor"""
wx.Frame.__init__(self, None, title="Test EXE", size=(1024, 768))
panel = wx.Panel(self)
lbl = wx.StaticText(panel, label="This is a binary program!")
if __name__ == "__main__":
app = wx.App(False)
frame = MyFrame()
frame.Show()
app.MainLoop()
复制到Windows 7框时的输出根本不起作用。它正在为CentOS而不是Windows创建文件!因为我在Linux机器上运行脚本,所以不足为奇。如果在Windows上运行cxfreeze,最终会在输出中输入一些DLL文件。无论哪种方式,当你运行它在Windows上生成的exe时,它都有效。当您运行它在CentOS上创建的文件时,它可以正常工作。但是,如果您尝试将为该操作系统生成的文件复制到其他操作系统,则无效。