Python基础知识详解 从入门到精通(九)生成exe文件(可执行)、pyc、pyo文件

Python基础知识详解 从入门到精通(九)生成exe文件(可执行)、pyc、pyo文件

本篇主要是介绍python,内容可先看目录
其他基础知识详解,欢迎查看本人的其他文章
Python基础知识详解 从入门到精通(一)介绍
Python基础知识详解 从入门到精通(二)基础
Python基础知识详解 从入门到精通(三)语法与函数
Python基础知识详解 从入门到精通(四)列表、元组、字典、集合
Python基础知识详解 从入门到精通(五)模块管理
Python基础知识详解 从入门到精通(六)文件操作
Python基础知识详解 从入门到精通(七)类与对象
Python基础知识详解 从入门到精通(八)魔法方法

生成可执行文件

Python的代码需要依赖python环境才能运行,但是我们有时候需要脱离python环境执行代码,这时候就需要生成可执行文件(exe文件)

前提

安装python时候要勾选下面两个复选框否则会出错
如下
在这里插入图片描述

步骤

这里需要用到pip,一般都已经内置

  1. 安装pyinstaller
    按win+R 输入cmd 回车打开命令行界面
    输入

pip install pyinstaller

  1. 生成exe文件

pyinstaller -F [路径]文件名.py

若是 gui类型程序,不需要弹出命令窗口,步骤2改为

python pyinstaller -F -w 文件名.py

-F 表示生成单个可执行文件
-W 表示去掉控制台窗口,这在GUI界面是非常有用。不过如果是命令行程序的 话 那就删除这个选项!

后续,问题解决

执行命令后下生成三个目录:pycache、dist和build

__pycache__存放的.pyc文件是依赖于Python环境运行的,但是它可以用于不想让别人知道源码的时候,因为这种类型的文件是无法查看源码的;

build目录是pyinstaller存成临时文件的目录,可以安全删除;

最终的打包的exe可执行文件存在dist目录下:

注意dist可能不在原目录下,执行命令时会显示位置如,白色部分

在这里插入图片描述

若代码中有自己编写的模块,生成的exe可能不能用,解决方法如下,
两种方法

  1. 方法是把自己编写的模块与要打包的py文件放在同一目录下,然后直接打包即可;方法如上
  2. 是将自己编写的模块放到python的三方模块site-package文件夹中,然后再对py文件进行打包,方法如上

生成pyc,pyo文件

.pyc文件是字节码文件依赖于Python环境运行的,但是它可以用于不想让别人知道源码的时候,因为这种类型的文件是无法查看源码的

pyo文件是经过优化的字节码文件作用同上

方法

方法有两个

  1. py_compile模块
    引入模块
    import py_compile
    py_compile.compile(‘指定的文件名.py’,‘生成的文件名.pyc‘)
    命令compile.会将同目录下的文件编译成 .pyc文件(字节码文件)

  2. 命令行
    用 python -o -m py_compile 编译的文件名.py
    生成pyo文件 (经过优化处理的字节码文件)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章