0壹.什么把.py文件打包成为exe,保护批注pyinstaller的用法

一.用出席景

1.1 传说背景

本身要好用python写了3个小程序发给其余同事用,给他的正是1个.py文件,不过她以为相比较辛劳,还要设置景况,他问小编有未有大概一点的秘籍,小编给叁个exe文件,他就无须安装情形就能够运维作者的先后,小编心目在想这么费力,还要自身跟你打包改成exe,可是不能,何人叫是好对象了,我就应允她了。

壹.2 搜索素材

在写c#的时候,面向nuget编制程序(什么人叫④渣渣技师了);在就学python此前就此前有好多零部件(欣欣自得的飞起),早先在github和google上寻觅能源,最终开采以下几个东西
相关来源

  • PyInstaller:将 Python
    程序调换来单身的实行文书(跨平台)。官网
  • dh-virtualenv:构建并将 virtualenv 虚拟境遇作为贰个 Debian
    包来发布。ca88官网,官网
  • Nuitka:将脚本、模块、包编写翻译成可实施文件或扩大模块。官网
  • py2app:将 Python 脚本变为单独软件包(Mac OS
    X)。官网
  • py2exe:将 Python
    脚本变为单独软件包(Windows)。官网
  • pynsist:叁个用来创建 Windows 安装程序的工具,能够在安装程序中封装
    Python 本人。官网

壹.三 手艺方案

经过对照,最后挑选了上面例子中的 pyinstaller

一.肆 pyinstaller 使用教程整理

  1. 一向在指令行用pip安装
    pyinstaller【首回索要安装成功后,前面就不须要再设置了】

pip install pyinstaller

ca88官网 1

  1. 在命令行中切换成要打包的先后所在目录,间接输入上面包车型地铁吩咐就能够

pyinstaller learn01.py -F

ca88官网 2

pyinstaller参数 含义
-F 指定打包后只生成一个exe格式的文件
-D –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)
-c –console, –nowindowed 使用控制台,无界面(默认)
-w –windowed, –noconsole 使用窗口,无控制台
-p 添加搜索路径,让其找到对应的库。
-i 改变生成程序的icon图标
-h pyinstaller各个参数的讲解

壹.伍 关于 pyinstaller 使用计算

在用 pyinstaller
打包成exe后,点击运转,开采一向闪退,有点懵逼,测度肯定是和煦的施用办法不对,后来也去google上追寻了,开掘也有人也在寻找pyinstaller
打包exe后闪退的相关难点,遵照教程尝试了一点篇,找了一些天平素未有优良的答案,开掘依然闪退。既然没找到答案,那么自身就去youtube上找个广播次数相比较多的教程看看,看看别个怎么用法,最后大神的学科中找到了消除办法,在代码最前边丰硕相关代码就行,笔者收十了弹指间二种做法:

# 1.暂停的第一种方式
# time.sleep(10)

# 2.暂停的第二种方式
# input("Press <enter>")

# 3.暂停的第三种方式 (比较推荐这个)
# 提示使用之前,记得引入相关组件 import os
os.system("pause")

探望上述的做法,突然想起来了在c#中写调控台的场景,最后都会加一句一下代码(倘使不加,那就径直退出调控台了,看不到运转后的调控台重临的参数:

Console.Read();

一.陆 相关参考教程

  1. 微博的入门教程
  2. awesome中国语言法学系列
  3. b站摄像教程一
  4. b站录像教程2

相关文章