使用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安装程序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 如何使用Python进行OCR识别图片中的文字

    如何使用Python进行OCR识别图片中的文字

    这篇文章主要介绍了使用Python进行OCR识别图片中的文字 ,本文通过实例代码加文字说明的形式给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-04-04
  • PyCharm添加python库的方法步骤

    PyCharm添加python库的方法步骤

    在使用PyCharm过程中,有时候需要添加需要的Python扩展库,本文主要介绍了PyCharm添加python库的方法步骤,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • Python如何获取多线程返回结果

    Python如何获取多线程返回结果

    这篇文章主要介绍了Python如何获取多线程返回结果,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Python基于pip实现离线打包过程详解

    Python基于pip实现离线打包过程详解

    这篇文章主要介绍了Python基于pip实现离线打包过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • python 的 scapy库,实现网卡收发包的例子

    python 的 scapy库,实现网卡收发包的例子

    今天小编就为大家分享一篇python 的 scapy库,实现网卡收发包的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python中文档生成利器Sphinx的入门指南

    Python中文档生成利器Sphinx的入门指南

    在Python开发过程中,良好的文档是项目成功的关键之一,Sphinx是一个强大的文档生成工具,本文将为大家详细介绍Sphinx的具体使用,需要的可以参考下
    2025-01-01
  • Python定时任务APScheduler安装及使用解析

    Python定时任务APScheduler安装及使用解析

    这篇文章主要介绍了Python定时任务APScheduler安装及使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • python列表[list]和元组(tuple)详情

    python列表[list]和元组(tuple)详情

    这篇文章主要介绍了python列表[list]和元组(tuple)详情,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • python的tkinter中如何改变label背景颜色

    python的tkinter中如何改变label背景颜色

    在Python的tkinter中,使用config方法的background属性可以改变label的背景颜色
    2024-11-11
  • python通过文件头判断文件类型

    python通过文件头判断文件类型

    这篇文章主要介绍了python通过文件头判断文件类型,需要的朋友可以参考下
    2015-10-10

最新评论