使用Python打包程序并制作Windows安装程序的超完整指南

 更新时间:2025年02月15日 11:35:06   作者:蜗牛沐雨  
这篇文章主要介绍了Python脚本打包为Windows可执行文件(.exe),并使用InnoSetup制作带有安装向导的安装程序,文中通过代码介绍的非常详细,需要的朋友可以参考下

前言

在开发 Python 应用程序后,将其分享给没有 Python 环境的用户时,直接分发源代码并不方便。本文将教你如何将 Python 脚本打包为 Windows 可执行文件(.exe),并进一步制作成一个具有安装向导的安装程序。

步骤 1: 使用 auto-py-to-exe 打包 Python 脚本

auto-py-to-exe 是一个用户友好的工具,用于将 Python 脚本打包为独立的可执行文件。以下是详细操作:

1.1 安装 auto-py-to-exe

在命令行中运行以下命令安装 auto-py-to-exe

pip install auto-py-to-exe

1.2 启动图形界面

安装完成后,运行以下命令启动 auto-py-to-exe 的图形界面:

auto-py-to-exe

1.3 配置打包选项

在弹出的图形界面中:

  • Script Location:选择您的 Python 脚本文件(例如 your_script.py)。
  • Onefile:勾选 “Onefile”,将所有内容打包到单个文件中。
  • Console Window
    • 如果是 GUI 程序,选择 “Window Based (hide the console)”。
    • 如果是命令行程序,选择 “Console Based”。
  • Icon:可选,如果需要自定义图标,可以选择一个 .ico 文件。

点击 Convert .py to .exe,等待打包完成。打包成功后,生成的 .exe 文件通常位于 output 文件夹中。

1.4 测试生成的 .exe 文件

找到生成的 .exe 文件,双击运行,确保程序可以正常工作。如果一切正常,可以继续下一步。

步骤 2: 使用 Inno Setup 制作安装程序

为了将 .exe 文件打包成一个可安装的程序(带安装向导),我们使用专用工具 Inno Setup

2.1 下载并安装 Inno Setup

2.2 创建安装脚本

  • 打开 Inno Setup,选择 “Create a new script file using the Script Wizard”

  • 按照向导填写信息:

    • Application Information:

      • Application name:填写应用程序名称(如 “My App”)。
      • Application version:填写版本号(如 “1.0”)。
      • Application publisher:填写发布者名称(如 “My Company”)。
    • Application Files:

      • 添加生成的 .exe 文件,例如 C:\Users\YourName\output\your_program.exe
    • Application Shortcuts:

      • 勾选 “Create a shortcut for this application”,并设置快捷方式名称。
    • Application Documentation:

      • 可选:如果有许可协议文件或帮助文档,可以在此步骤中添加。
    • Setup Languages:

      • 默认是英文安装界面,也可以选择其他语言。
    • Compiler Output:

      • 设置生成安装程序的位置,例如 C:\Users\YourName\output\setup.exe
  • 完成后,Inno Setup 会生成一个 .iss 文件(脚本文件)。

2.3 编译安装程序

  • 点击 Inno Setup 界面顶部的 “Compile” 按钮。
  • 编译完成后,在输出目录中找到生成的安装程序(如 setup.exe)。

步骤 3: 测试安装程序

  • 运行生成的 setup.exe,按照提示完成安装。
  • 检查以下内容:
    • 是否正确安装到指定目录(如 C:\Program Files\YourApp)。
    • 是否生成桌面快捷方式。
    • 程序是否能够正常运行。

额外提示

减少打包文件大小

如果打包后的文件过大,可以尝试以下方法:

  • 在 auto-py-to-exe 中启用 “Advanced” 选项,手动排除不需要的依赖库。
  • 确保只安装了实际需要的依赖。

自定义安装界面

Inno Setup 支持高度自定义,可以通过编辑 .iss 脚本来添加安装界面的背景图片、自定义文本等。

示例:为安装程序添加背景图片:

[Setup]
WizardImageFile=path\to\your\image.bmp
WizardSmallImageFile=path\to\your\small_image.bmp

更友好的用户体验

  • 添加程序图标:在 auto-py-to-exe 和 Inno Setup 中分别指定图标文件。
  • 添加卸载功能:Inno Setup 默认生成卸载程序,用户可以通过控制面板移除软件。

总结

通过本文的指导,你可以轻松地将 Python 脚本打包为独立的可执行文件,并制作一个完整的安装程序,方便用户安装和使用。以下是核心步骤:

  • 使用 auto-py-to-exe 将 Python 脚本打包为 .exe 文件。
  • 使用 Inno Setup 制作安装程序。
  • 测试打包后的程序是否正常运行。

到此这篇关于使用Python打包程序并制作Windows安装程序的文章就介绍到这了,更多相关Python打包制作Windows安装程序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • PyTorch中可视化工具的使用

    PyTorch中可视化工具的使用

    本文主要介绍了PyTorch中可视化工具的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Python中进程的调度算法详解

    Python中进程的调度算法详解

    这篇文章主要介绍了Python中进程的调度算法详解,要想多个进程交替运行,操作系统必须对这些进程进行调度,这个调度也不是随即进行的,而是需要遵循一定的法则,由此就有了进程的调度算法,需要的朋友可以参考下
    2023-07-07
  • PyCharm使用之配置SSH Interpreter的方法步骤

    PyCharm使用之配置SSH Interpreter的方法步骤

    这篇文章主要介绍了PyCharm使用之配置SSH Interpreter的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Python虚拟环境终极(含PyCharm的使用教程)

    Python虚拟环境终极(含PyCharm的使用教程)

    这篇文章主要介绍了Python虚拟环境终极(含PyCharm的使用教程),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • Python3 ID3决策树判断申请贷款是否成功的实现代码

    Python3 ID3决策树判断申请贷款是否成功的实现代码

    这篇文章主要介绍了Python3 ID3决策树判断申请贷款是否成功的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • Python 详解爬取并统计CSDN全站热榜标题关键词词频流程

    Python 详解爬取并统计CSDN全站热榜标题关键词词频流程

    读万卷书不如行万里路,只学书上的理论是远远不够的,只有在实战中才能获得能力的提升,本篇文章手把手带你用Python爬取CSDN全站综合热榜标题,顺便统计关键词词频,大家可以在过程中查缺补漏,提升水平
    2021-11-11
  • 使用Python快速制作可视化报表的方法

    使用Python快速制作可视化报表的方法

    今天小编就为大家分享一篇使用Python快速制作可视化报表的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • 如何利用Anaconda配置简单的Python环境

    如何利用Anaconda配置简单的Python环境

    这篇文章主要为大家详细介绍了如何利用Anaconda配置简单的Python环境,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • python实现zabbix发送短信脚本

    python实现zabbix发送短信脚本

    这篇文章主要为大家详细介绍了python实现zabbix发送短信脚本,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • 离线状态下在jupyter notebook中使用plotly实例

    离线状态下在jupyter notebook中使用plotly实例

    这篇文章主要介绍了离线状态下在jupyter notebook中使用plotly实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04

最新评论