Python3 打包exe

cx_Freeze(不推薦)

之前只用 cx_Freeze 支持將 python3 打包成 exe ,示例以下:python

在你要打包的 python 文件下新建這個 setup.py 文件:ui

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from cx_Freeze import setup, Executable

base = None

executables = [
    Executable('你的代碼.py', base=base)
]

setup(
    name="TTyb",
    version="1.0",
    description="打包示例",
    executables=executables
)

而後在當前命令行執行:命令行

python3 setup.py build

這時候會在當前目錄下生成一個 build 文件,裏面就有一個 execode

注意: cx_Freeze 打包回忽略依賴文件,全部通常依賴文件要手動從 site-packge 裏面拷貝到build文件裏面去,特別麻煩!ip

PyInstaller(推薦)

後面 PyInstaller 開始支持 python3 打包,這樣子打包就方便不少了,直接在當前命令行下:utf-8

#命令語法:pyinstaller -F 文件名(帶後綴py)
#經常使用參數說明:
#–icon=圖標路徑
#-F 打包成一個exe文件
#-w 使用窗口,無控制檯
#-c 使用控制檯,無窗口
#-D 建立一個目錄,裏面包含exe以及其餘一些依賴性文件
#pyinstaller -h 來查看參數

#將cmd的目錄切換至(命令:cd 文件路徑(注意空格))須要打包的py文件目錄下:
#有命令窗口彈出
pyinstaller -F shjys_rjjqk.py  
#無命令窗口彈出
pyinstaller -F -w shjys_rjjqk.py  
#或者
pyinstaller -F shjys_rjjqk.py  --noconsole

打包好的exe文件,在同目錄的 dist 文件中,若是有依賴文件,就能夠放到dist文件夾下便可get

當打包出現錯誤:cmd

for real_module_name, six_moduleAttributeError: 'str' object has no attribute 'items'

說明 setuptools 版本不行,直接更新這個版本就好:同步

pip3 install -U setuptools

個人博客即將同步至騰訊雲+社區,邀請你們一同入駐:https://cloud.tencent.com/developer/support-plan?invite_code=3qlzjs99fq4gg博客

相關文章
相關標籤/搜索