Python可执行文件的转换

 

 

当开发者向普通用户分享程序时,为了方便用户在未安装Python环境的情况 下能够正常运行,需要将开发好的程序进行打包,转换成用户可运行的文件类

型。本节将介绍在Windows和Linux两种系统下,将Python类型的文件转换成可执 行文件的方式。

PyInstaller是常见的执行文件打包工具。该工具的安装方式非常简单,可运行 在Windows 、MacOS X和GNU/Linux操作系统环境中,支持Python 2和Python 3两  种版本,并且在不同的操作系统环境中,PyInstaller工具的使用方法和选项相同。

需要注意的是,用PyInstaller打包的执行文件,只能在与执行打包操作的系统 类型相同的环境下运行。也就是说,这样的执行文件不具备可移植性,比如在

Windows系统下用PyInstaller生成的执行文件只能运行在Windows环境,在Linux系 统下生成的执行文件只能运行在Linux环境。

 

 

 

 

 

 

2.9.1    在Windows系统下转换

首先从官方网站(pyinstaller · PyPI)下载PyInstaller的安装  包,将下载好的PyInstaller压缩包文件进行解压。解压好的文件夹下包含setup.py 文件。可通过执行如下命令对PyInstaller进行安装:

 

>>> python setup .py install

安装PyInstaller的过程如下所示:

a8262c314a9b4a1d8b475dc3e44175d8.png

准备好要进行打包的Python文件和需要绑定的图标类型。需注意的是图标应 为.ico类型。将两个文件放到一个文件夹中,通过cmd窗口打开该文件夹所在路  径,执行如下命令进行打包操作:

>>> pyinstaller -F -i snail.ico ms08067 .py

执行效果如下所示:

 

 

 

 

 

0eeaf795385b43719ff5f91379121032.png

执行后的文件如图2-7所示。

2071d26e54354d2db1050b1d1907518e.png

图2-7    执行后的文件

生成的可执行文件ms08067.exe存储在dist文件夹中,通过cmd命令打开文件 所在路径,并运行ms08067.exe文件,运行结果如下所示:

87e7938cd35946d2bce03a3a656bc963.png

 

 

 

 

 

 

2.9.2    在Linux系统下转换

在Linux系统下安装PyInstaller的方式与Windows系统中相同,从官方网站下 载PyInstaller ,将下载好的PyInstaller压缩包文件解压,通过执行如下命令对

PyInstaller进行安装:

 

>>> python3 setup .py install

执行结果如下所示:

c877afc00fe04783a5d30b14cf151633.png

将要打包的Python文件放到一个文件夹中,执行如下命令进行打包操作:

aee7db4d70c345e5a0a260ab8cb18e44.png

>>> pyinstaller -F ms08067 .py

可执行文件转换的执行效果如下所示:

 

 

 

 

 

b9133437f7a94f189d3d20dfa17436ca.png

生成的可执行文件ms08067存储在dist文件夹中,运行命令终端打开文件所在 路径,并运行ms08067可执行文件,运行结果如下所示:

049eeeed5139435d9fbc1154f3d0430b.png

 

相关推荐

  1. python制作执行文件(cython)

    2024-01-27 11:24:01       32 阅读
  2. python脚本制作执行文件(pyinstaller)

    2024-01-27 11:24:01       41 阅读
  3. Qt框架相关执行文件

    2024-01-27 11:24:01       45 阅读
  4. 二进制执行文件常见后缀

    2024-01-27 11:24:01       45 阅读
  5. Python程序打包成exe执行文件说明

    2024-01-27 11:24:01       49 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-27 11:24:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-27 11:24:01       101 阅读
  3. 在Django里面运行非项目文件

    2024-01-27 11:24:01       82 阅读
  4. Python语言-面向对象

    2024-01-27 11:24:01       91 阅读

热门阅读

  1. STL_list

    STL_list

    2024-01-27 11:24:01      54 阅读
  2. PalWorld/幻兽帕鲁Ubuntu 22.04 LTS 一键部署脚本

    2024-01-27 11:24:01       52 阅读
  3. python语法学习

    2024-01-27 11:24:01       47 阅读
  4. emacs 源码分析(六)

    2024-01-27 11:24:01       61 阅读
  5. js设计模式实例

    2024-01-27 11:24:01       50 阅读
  6. Mybatis之SqlSessionFactory详解

    2024-01-27 11:24:01       70 阅读
  7. 如何创建线程

    2024-01-27 11:24:01       49 阅读
  8. [GN] Vue3.2 快速上手 ---- 组件通信

    2024-01-27 11:24:01       59 阅读
  9. CF1029E Tree with Small Distances 题解

    2024-01-27 11:24:01       57 阅读
  10. TiDB中Table映射到KV

    2024-01-27 11:24:01       56 阅读
  11. nginx做盗链与防盗链配置

    2024-01-27 11:24:01       47 阅读
  12. 常用的gpt-4 prompt words收集8

    2024-01-27 11:24:01       51 阅读