python文件封装成exe

  • 第一种:.py文件直接封装成exe
  • 第二种:整个项目封装成exe
  • )

    第一种:.py文件直接封装成exe

    1.cmd进入py文件所在的目录
    备注:在py文件所在的目录下,按住shift+鼠标右击,然后找到“在此处打开PowerShell窗口”,即可进入当前目录
    2.输入以下代码:
    备注:使用-D制作出来的exe比使用-F的快很多,因为-F把所有dll文件都打包到一个exe中了(-F这时候exe会很大,加载变慢,推荐-D

    #-w:不显示后台 -i添加图标
    pyinstaller -D -w -i D:\\main.ico ***.py(py文件名)
    

    第二种:整个项目封装成exe

    1.打开项目的位置;
    2.打开cmd,切换到项目的路径下,在控制台输入:

    #为了解决编码问题
    chcp 65001
    

    3.打开cmd,切换到项目的路径下,在控制台输如:
    生成main.spec文件

    pyi-makespec main.py
    

    4.制作spec文件

    # -*- mode: python ; coding: utf-8 -*-
    
    
    block_cipher = None
    
    
    a = Analysis(['main_login.py','akm_signup.py','copy_files.py','main.py','my_command.py','not_online.py','suggest_main.py','update_files.py'],
                 pathex=['C:/Users/Lenovo/PycharmProjects/CAM_GUIDE-GZY'],
                 binaries=[],
                 datas=[],
                 hiddenimports=[],
                 hookspath=[],
                 hooksconfig={},
                 runtime_hooks=[],
                 excludes=[],
                 win_no_prefer_redirects=False,
                 win_private_assemblies=False,
                 cipher=block_cipher,
                 noarchive=False)
    pyz = PYZ(a.pure, a.zipped_data,
                 cipher=block_cipher)
    
    exe = EXE(pyz,
              a.scripts, 
              [],
              exclude_binaries=True,
              name='main_login',
              debug=False,
              bootloader_ignore_signals=False,
              strip=False,
              upx=True,
              console=True,
              disable_windowed_traceback=False,
              target_arch=None,
              codesign_identity=None,
             entitlements_file=None , icon='D:\\auto.ico' )
    coll = COLLECT(exe,
                   a.binaries,
                   a.zipfiles,
                   a.datas, 
                   strip=False,
                   upx=True,
                   upx_exclude=[],
                   name='main_login')
    
    

    a.Analysis中输入所有的py文件,与main(我这里是main_login,这里其实指的事你的主文件)一个文件夹的可以直接写文件名,不一个文件夹的需要写完整的文件路径

    b.pathex中输入项目的路径

    c.如果exe要自定义一个图标的话需要调整entitlements_file=None这边(注意:这里用-i无法自定义图标)

    entitlements_file=None , icon='D:\\auto.ico')
    

    …其余的一般不用填
    d.用配置好的spec文件制作exe:

    pyinstaller -D main_login.spec
    

    main.exe(我这里是main_login.exe啦)路径在该目录的dist文件夹下

    补充说明:
    shift+鼠标右击+在此处打开PowerShell窗口,效果如下:

    来源:小洋爱小芝

    物联沃分享整理
    物联沃-IOTWORD物联网 » python如何封装成exe

    发表评论