封装py文件为exe文件:攻略及心得体会



  • 包: pyinstaller

    1. 一定要用虚拟环境!! 减少了很多出错的可能性
    2. 在用自己的py文件创造exe之前,最好写一个简单的python程序测试一下pyinstaller有没有问题。

    虚拟环境

    创建一个叫做tutorial-env的虚拟环境并运行。这个例子在Python虚拟环境的documentation里面

    python3 -m venv tutorial-env
    tutorial-env\Scripts\activate.ps1
    

    注:如果你用的是powershell,则运行

    tutorial-env\Scripts\activate.ps1
    

    如果是普通的command line

    tutorial-env\Scripts\activate.bat
    

    6a984136-51d0-4a06-ac8f-dfa885bc507c-image.png
    运行的结果是cmd进入到了虚拟环境界面。在每一行的开头出现了(虚拟环境名字)。
    之后再在这个虚拟环境中安装pyinstaller和所需要的包!

    封装代码

    pyinstaller --onefile -w pydocument.py
    

    之后会出现两个文件夹,一个是build,一个是dist。dist里面会有生成的exe文件。把这个文件放到python文件的目录中,运行就好啦~



  • 封装完成之后,我发现如果把一个程序都封装到一个file里面,会导致程序启动很慢。
    然后我在网上找到了这个答案
    a32a470c-d4b7-4972-9bfe-538dc8053404-image.png
    如果把程序封装到一个文件,在文件执行的时候还需要有一个unpack的操作。
    因此,用 --onedir 把程序封装到一个文件夹里之后可以有效加快运行

    pyinstaller --onedir -w pydocument.py


Log in to reply