美文网首页程序员
利用pyinstaller将py文件打包为exe

利用pyinstaller将py文件打包为exe

作者: 老梁家的风子 | 来源:发表于2018-05-13 22:49 被阅读479次

    如何将py文件打包成为exe文件

    写在前面

    做大创的时候,因为需要计算合金的各种能量、温度等一大堆数据,为了能够福泽后来的学弟学妹,我决定将我处理数据时用的python程序打包成exe,这样就可以在没有安装python环境的电脑上运行我的程序了。所以上网查了一大堆如何打包的方法,尝试了py2exe和pyinstaller这两种方法,发现还是后者更加的简单便捷。同时为了能够帮助我自己以后再想用到的时候有一个教程可以查找,我就写了这一篇博客出来,留作纪念。

    前提条件

    首先我们需要两个东西:python3.4版本,pyinstaller模块。

    在windows下用pip安装pyinstaller只需要在cmd中输入

    pip install pyinstaller
    

    即可。

    开始打包

    首先我们将想要打包的test.py文件放在文件夹Test中,test.py文件中内容如下

    #输入两个数,求两个数之和。
    
    x = input('请输入第一个数:')
    y = input('请输入第二个数:')
    
    z = float(x) +float(y)
    
    print('求得和为:'+str(z))
    
    z = input('请按任意键退出...')
    

    这个文件夹绝对地址为

    C:/Test
    

    所以我们首先通过cmd进入到这个文件夹内,也就是在cmd中输入

    cd C:/Test
    

    我们这就相当于已经进入到了这个文件夹中,接下来就是重头戏了,是时候打包了。

    再在cmd中输入命令

    pyinstaller -F test.py
    

    其中-F这个参数代表将所有内容打包成一个exe文件。如果不带这个参数的话,它将会是一大堆文件,所以这相当于是方便拷贝和使用了。

    当一长串信息闪过,最终停止后,我们就可以再看一下文件夹中的内容了,其中多出了一个dist文件夹,里面存放的就是我们所需要的东西:test.exe。

    我们打开以后,就可以看到以下界面

    示例界面

    恭喜你!成功了。

    一些小坑

    当然,小程序打包成exe谁也不像动则三四百兆,本来就是图个方便,如果太大的话反而还比较麻烦。所以我在打包的时候就发现pyinstaller会把程序用到的所有模块都给他包含进去。

    当我用到了numpy模块的时候,我的exe程序一下子涨到了100+M,这就让我很费解,我看了一下打包的信息,原来他把各种PyQt5的模块也给包进去了,然而我的程序中并没有用到PyQt5这个模块,毕竟就一个黑框框,还没有给它写界面呢。

    假如我用的例子是

    import numpy as np
    
    #输入两个数,求两个数之和。
    
    x = input('请输入第一个数:')
    y = input('请输入第二个数:')
    
    z = float(x) +float(y)
    
    print('求得和为:'+str(z))
    
    z = input('请按任意键退出...')
    

    生成的exe大小就到了100M.

    所以无奈之下,我只能放弃使用numpy了。

    所以诸位大佬如果知道怎么能够自己控制pyinstaller所打包进去的库,还希望在评论或者私信指点一下,感激不尽!!!

    相关文章

      网友评论

        本文标题:利用pyinstaller将py文件打包为exe

        本文链接:https://www.haomeiwen.com/subject/egyrdftx.html