当前位置: 代码网 > it编程>前端脚本>Python > Python程序打包exe,单文件和多文件方式

Python程序打包exe,单文件和多文件方式

2025年06月04日 Python 我要评论
python 脚本打成exe文件安装pyinstallerpip install pyinstaller如遇网速慢使用国内镜像源小技巧:pip install -i https://pypi.doub

python 脚本打成exe文件

安装pyinstaller

pip install pyinstaller

如遇网速慢使用国内镜像源小技巧:

	pip install -i https://pypi.douban.com/simple/ pyinstaller #豆瓣源
	pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller #清华源

准备一个ico图标

  • 可自己设计一个icon图片
  • 搜索一个开源icon图片
  • 将icon转成ico图标

打包方式一(适用于文件较少的程序)

命令行方式:

pyinstaller -f -i app.ico main.py -p other.py -p other1.py --hidden-import util --hidden-import util

打包方式二 (文件较多)

spec方式

  • xxx.spec
# -*- mode: python ; coding: utf-8 -*-


block_cipher = none

#此项目中所有的py文件(要打包进去的所有py文件),和主程序不在同一个包中的py文件用绝对路径。
a = analysis(['main.py',
                'd:/desktop/python/utils/dbsession.py',
                'd:/desktop/python/lib/mysqlutils.py',
            ],
             pathex=['d:/desktop/python/demo'],	# 项目的绝对路径
             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,
          a.binaries,
          a.zipfiles,
          a.datas,  
          [],
          name='programname',	#打包程序的名字
          debug=false,
          bootloader_ignore_signals=false,
          strip=false,
          upx=true,
          upx_exclude=[],
          runtime_tmpdir=none,
          # console=true表示,打包后的可执行文件双击运行时屏幕会出现一个cmd窗口,不影响原程序运行
          console=true,
          disable_windowed_traceback=false,
          target_arch=none,
          codesign_identity=none,
          entitlements_file=none )

# 如果想要修改程序图标,使用在exe()中加入 icon='xxxxx', 切记:绝对路径

spec打包命令:

pyinstaller -f -c xxx.spec

命令说明:

  • -c 执行打包后的exe文件会带控制台
  • -w 执行打包后的exe文件不带控制台

项目启动带参跟执行python文件一样

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com