源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

使用cx_freeze把python打包exe示例

  • 时间:2021-11-26 02:35 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:使用cx_freeze把python打包exe示例
需要使用到的文件wxapp.py, read_file.py, setup.py
[u]复制代码[/u] 代码如下:
#!/usr/bin/env python # -*- coding: utf-8 -*- #file: wxapp.py import wx import os import sys import read_file class Frame(wx.Frame):     def __init__(self):         wx.Frame.__init__(self, parent=None, title='Hello from cx_Freeze')         panel = wx.Panel(self)         closeMeButton = wx.Button(panel, -1, 'Close Me')         wx.EVT_BUTTON(self, closeMeButton.GetId(), self.OnCloseMe)         wx.EVT_CLOSE(self, self.OnCloseWindow)         pushMeButton = wx.Button(panel, -1, 'Push Me')         wx.EVT_BUTTON(self, pushMeButton.GetId(), self.OnPushMe)         sizer = wx.BoxSizer(wx.HORIZONTAL)         sizer.Add(closeMeButton, flag=wx.ALL, border=20)         sizer.Add(pushMeButton, flag=wx.ALL, border=20)         panel.SetSizer(sizer)         topSizer = wx.BoxSizer(wx.VERTICAL)         topSizer.Add(panel, flag=wx.ALL | wx.EXPAND)         topSizer.Fit(self)     def OnCloseMe(self, event):         obj = read_file.PrintContent()         if getattr(sys, 'frozen', None):             path = os.path.dirname(sys.executable)         else:             path = os.path.dirname(__file__)         path = os.path.join(path, "read_file.py")         obj.show_content(path)     def OnPushMe(self, event):         wx.MessageBox('I was pushed!', 'Informational message')     def OnCloseWindow(self, event):         self.Destroy() class App(wx.App):     def OnInit(self):         frame = Frame()         frame.Show(True)         self.SetTopWindow(frame)         return True app = App(1) app.MainLoop()
[u]复制代码[/u] 代码如下:
#!/usr/bin/env python # -*- coding: utf-8 -*- #file: read_file.py class PrintContent(object):     def show_content(self, path):         f = open(path)         for line in f:             print line         f.close()
[u]复制代码[/u] 代码如下:
#!/usr/bin/env python # -*- coding: utf-8 -*- #file: setup.py # A simple setup script to create an executable running wxPython. This also # demonstrates the method for creating a Windows executable that does not have # an associated console. # # wxapp.py is a very simple 'Hello, world' type wxPython application # # Run the build process by running the command 'python setup.py build' # # If everything works well you should find a subdirectory in the build # subdirectory that contains the files needed to run the application import sys from cx_Freeze import setup, Executable build_exe_options = {"optimize": 2,                      "include_files": ["read_file.py"]} base = None if sys.platform == 'win32':     base = 'Win32GUI' executables = [Executable(script='wxapp.py',                base=base,                targetName="Demo.exe",                compress=True,                icon="py.ico")] setup(name='wxapp',       version='0.1',       description='Sample cx_Freeze wxPython script',       options = {"build_exe": build_exe_options},       executables=executables)
打开cmd进入代码所在目录,然后输入:
[u]复制代码[/u] 代码如下:
python setup.py bdist_msi
然后会生成build和dist两个文件夹,build文件夹里存放的是exe可执行文件和所依赖的库,直接把整个文件夹复制给别人就可以通过双击exe文件运行了,dist文件夹下是build文件夹的安装程序,直接传dist文件夹下的安装包给朋友,朋友运行安装包后会得到和build一样的文件夹,路径由用户自己选择 至于setup.py里面的参数选项可以自己去官网查看相应的选项信息
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部