Python升级之路( Lv13 ) pyinstaller 使用详解

Posted 时间静止不是简史

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python升级之路( Lv13 ) pyinstaller 使用详解相关的知识,希望对你有一定的参考价值。

Python系列文章目录

第一章 Python 入门
第二章 Python基本概念
第三章 序列
第四章 控制语句
第五章 函数
第六章 面向对象基础
第七章 面向对象深入
第八章 异常机制
第九章 文件操作
第十章 模块
第十一章 GUI图形界面编程
第十二章 pygame游戏开发基础
第十三章 pyinstaller 使用详解

pyinstaller 使用详解

前言

本章主要对 pyinstaller 的安装, 使用和打包方式做了详细的探究

什么是 pyinstaller

pyinstaller 是Python 提供的一个第三方拓展库模块. 它的功能是将我们的 Python 程序打包成可执行的 .exe 程序

安装

方式一 pycharm安装

  1. 安装 pyinstaller 模块 在 pycharm 中操作:file-->setting-->Project:xxx -->Project interpretor,再点击(加号)

  2. 在新弹窗中输入要下载的第三方模块, 然后点击该模块, 最后点击左下角安装即可

方式二 命令行安装

命令行安装: 在命令行输入一下命令进行安装

pip install pyinstaller

使用

基本使用

最基本的使用方式:

pyinstaller  xxx.py

注意: 后面可以跟多个python文件, 但注意用空格隔开

参数介绍

pyinstall 打包时, 可以跟各种参数, 这些参数用来拓展打包时需要的定制需求

常用参数如下表所示:

参数名作用
-F / --onefile打包一个成单个文件, 多个.py文件或者需要打包其他资源(图片,音频) 不要使用
-D / --onedir 打包多个文件,在dist中生成很多依赖文件,适合以框架形式编写工具代码
-w / –windowed/–noconsole程序启动的时候不会打开命令行 (只对Windows有效, 编写GUI程序时使用此参数有用)
-i /–icon指定打包之后的.exe文件的图标
-n / –name=NAME指定打包之后的.exe 文件的名称
-v FILE /–version=FILE指定打包之后的.exe 文件的版本信息. FILE: 版本信息描述文件编写请点击查看
-a/--ascii不包含 Unicode 字符集支持
-d/--debug产生 debug 版本的可执行文件
-c /--console/ --nowindowed使用命令行执行(此参数默认开启)
-v / --version查看当前pyinstaller版本
--add-data <源目录;目标目录or源目录:目标目录>将源目录文件额外打包到.exe程序所在目标目录. ; Windows下使用, :Linux下使用
-h/--help查看该命令帮助信息

利用自带帮助文档进行学习

下载pyinstaller 之后, 可以输入pyinstaller -h 或者 pyinstaller --help , 来查看其自带的帮助文档

现在将比较重要介绍的截图下

打包

方式一 利用命令行打包

利用上面所学到的参数, 对文件进行打包

  1. 将文件打包成 xxx.exe

    pyinstaller -F xxx.py
    
  2. 将文件打包成 xxx.exe, 并且运行时不打开命令行(tkinter程序打包时使用)

    pyinstaller -F -w xxx.py
    
  3. 打包上一章坦克大战源码
    将源码打包成 坦克大战v1.0.1.exe 并且运行时不打开命令行,
    .\\img\\p1tankU.gif 设置为程序图标, 并将当前 .\\img\\ 目录下文件打包到 .exe程序运行所在目录, 且命名为 .\\img\\

    pyinstaller -w -D  -i .\\img\\p1tankU.gif   -n "坦克大战v1.0.1"   tank26.py --add-data ".\\img\\;.\\img\\"
    

方式二 利用图形界面打包

auto-py-to-exe 用于将Python程序打包成可执行文件的图形化工具
该工具的作用是将我们的在图形化界面点击的选项转换成方式一中的命令

  1. 安装方式 :pip install auto-py-to-exe

  2. 启动方式: 命令行输入 auto-py-to-exe

  3. 启动后, 我们只需要根据情况去选择, 然后点击底部蓝色按钮即可

#51CTO学院四周年#小白的Python升级之路

    猴儿我90后,毕业快两年了,去年发现的51CTO,当时只是想在51CTO上找点Python的教学视频学学爬虫啥的,偶然间发现了大王Alex的免费的Python教学课程,看了几集发现,哎呦!大王这屌丝幽默又不失格局的教学风格就是我想要的,看大王的视频,不会枯燥,而且每次没动力学的时候,听听大王的鸡汤就又有精神了,嘻嘻!之后每天学的津津有味,学了一个多月,就已经能写写小脚本啥的减轻工作负担了,但是毕竟是免费的,后面的内容不全,没法学到那些关键的东西,因为刚工作不久,没多少钱,就没想着报班,只好在网上找一些资料学后面的内容,学了一段时间后发现,学习效率明显变慢了,之前看视频大王一讲我就明白,现在看资料要看半天。勉强撑了一段时间之后,我撑不下去了,后面对我这种不是计算机专业的人来说确实有点难。

     之后我就咬了咬牙,报了个网络班,一关一关的闯还是挺适合我的,就像玩游戏升级一样,反正看大王视频又不会无聊,还能学到东西,还有一大堆和我一样的同学一起学,遇到不懂的问题还可以请教辅导老师,再也不用像以前只能百度了。

      转眼,我已经学到Python的网络编程进阶部分了,我想要是我自己自学的话,可能还在基础部分徘徊呢。所以,还是很感谢51CTO能够提供这样一个学习平台的,因为要是去北京报班,实在是有点困难。

     最后呢,由于猴儿文笔有限,写不出什么牛逼的话,就借着51CTO四周年,对51CTO和大王以及辅导老师说声谢谢!也希望自己能早点出师,争取早日找到一份和Python相关的工作。

      

以上是关于Python升级之路( Lv13 ) pyinstaller 使用详解的主要内容,如果未能解决你的问题,请参考以下文章

python打怪升级之路

3大新功能,9大新升级,联软科技推出LV7000新版本

pyinstaller问题和问题

#51CTO学院四周年#小白的Python升级之路

Python爬虫之路——简单网页抓图升级版(添加多线程支持)

python 2.7 - 3.5 升级之路 : 准备阶段开发环境 -- pip3, vitualEnv, pycharm