总结Pyinstaller打包的高级用法
作者:可以叫我才哥 发布时间:2021-03-27 02:48:16
标签:Pyinstaller,打包
一、安装pyinstaller
PyInstaller
是一个用来将Python
程序打包成一个独立可执行文件的第三方包。
因是第三方包,所以需要安装一下:
pip install pyinstaller
或者升级到最新版本:
pip install --upgrade pyinstaller
或者安装开发者版本:
pip install https://github.com/pyinstaller/pyinstaller/archive/develop.tar.gz
当然了,也可以下载whl
文件,然后pip install
安装
更多可参考官网指引:
http://www.pyinstaller.org/downloads.html
二、打包初体验
我们简单试下打包python代码为exe可执行文件,测试代码如下:
# 测试.py
import os
path = os.getcwd()
print(f'当前文件路径:{path}')
os.system('pause')
这段代码是打印文件所在的目录,我们用pyinstaller
简单打包的命令如下:
pyinstaller -F 测试.py
这个命令,执行过程如下:
(env_test) F:\PythonCool\pyinstaller>pyinstaller -F 测试.py
403 INFO: PyInstaller: 4.3
403 INFO: Python: 3.8.10 (conda)
434 INFO: Platform: Windows-10-10.0.19042-SP0
436 INFO: wrote F:\PythonCool\pyinstaller\测试.spec
455 INFO: UPX is not available.
468 INFO: Extending PYTHONPATH with paths
['F:\\PythonCool\\pyinstaller', 'F:\\PythonCool\\pyinstaller']
501 INFO: checking Analysis
...
...
15006 INFO: Appending archive to EXE F:\PythonCool\pyinstaller\dist\测试.exe
18999 INFO: Building EXE from EXE-00.toc completed successfully.
成功后会在同级目录下生成一个dist
文件,里面就是一个和代码文件名同名的可执行文件:
双击该可执行文件,我们可以看到直接在python
解释器里运行测试.py
文件时一样的结果:
这里需要注意的是,我们在进行打包的时候,有必要指定被打包的py文件的路径,两种方式供选择:
方式一:先切换到被打包py文件目录,再执行打包指令
(base) C:\Users\Gdc>cd F:\PythonCool\pyinstaller
(base) C:\Users\Gdc>F:
(base) F:\PythonCool\pyinstaller>pyinstaller -F 测试.py
方式二:打包指令中指定py文件的绝对路径
(base) C:\Users\Gdc>pyinstaller -F F:\PythonCool\pyinstaller\测试.py
关于成功打包的测试.exe
可执行文件,我们发现其图标是默认的,且启动时会显示命令行窗口。那么,我们可以怎么自定义exe
图标,又或者去掉命令行窗口呢?
三、打包进阶体验
来源:https://blog.csdn.net/dxawdc/article/details/117883146


猜你喜欢
- 通常的聊天室所采用的程序,也就是Chat程序了,其基本结构原理是不会采用到数据库的。那究竟采用什么技术呢?我们知道ASP变量当中Sessio
- (1)使用python生成pdf文档需要的最基本的包是pdfgen。它属于reportlab模块,而reportlab模块并没有默认集成到p
- 目录1. 安装方法2. 简单示例3. 兼容字典的所有操作4. 设置返回默认值5. 工厂函数自动创建key6. 序列化的支持字典是 Pytho
- train_comb 为Dataframe数据:train_comb= train_comb.as_matrix() #得到values的n
- 1. 引言在数据处理、机器学习等领域,我们经常需要对各式各样的数据进行处理,本文重点介绍三种非常简单的方法来检测数据集中的异常值。 
- 示例代码如下:#!/usr/bin/python#-*- coding: utf-8 -*-import matplotlib.pyplot
- Dump ALL MySQL Databasesmysqldump --user=XXXXXXXX --password=XXXXXXX -
- 本文实例讲述了基于JavaScript实现的插入排序算法。分享给大家供大家参考,具体如下:根据排序过程中使用的存储器不同,可以将排序方法分为
- 如何使用dialog弹窗1.官网示例因为这次是在手机上用的所以就用了vant组件2.第一步引入vant中的dialog组件官网介绍自行选择安
- Exec sp_droplinkedsrvlogin ZYB,Null --删除映射(录与链接服务器上远程登录之间的映射) Exec sp_
- 首先说一个小技巧,True可看作1,False可看作0 ,并且可以参与运算!正文开始!!! 一、map()map(func,ite
- 如下代码可以计算输入的两张图像的结构相似度(SSIM),结果与matlab计算结果一致// An highlighted blockimpo
- 深度学习中对于网络的训练是参数更新的过程,需要注意一种情况就是输入数据未做归一化时,如果前向传播结果已经是[0,0,0,1,0,0,0,0]
- 最近群里好多人讨论oracle安全问题,今天找了些资料学习了下 获取Oracle当前会话的一些属性 (对于sql注射的环境判断很有用哦) S
- 代码如下:CREATE TABLE [dbo].[TbGuidTable]( [TableName] [varchar](50) NOT N
- 1. 简述我们在用scrapy爬取数据时,首先就要明确我们要爬取什么数据。scrapy提供了Item对象这种简单的容器,我们可以通过Item
- 一:数据源介绍本篇文章介绍的是使用python实现对葵花8号卫星数据进行自动下载。葵花8号卫星是日本的一颗静止轨道气象卫星,覆盖范围为60S
- 散点图散点图是指在 回归分析中,数据点在直角坐标系平面上的 分布图,散点图表示因变量随 自变量而 变
- SQL注入语句有时候会使用替换查询技术,就是让原有的查询语句查不到结果出错,而让自己构造的查询语句执行,并把执行结果代替原有查询语句查询结果
- SQL中的单记录函数 1.ASCII 返回与指定的字符对应的十进制数; SQL> select ascii('A')