生成可执行文件

PyInstaller

  • 脚本文件打包为可执行文件
  • 命令: python -m PyInstaller -F -w main.py --add-data "assets;assets" -F:独立可执行程序 -w:窗口模式,启动时不需要显示命令行 --add-data "assets;assets"assets\目录下有资源文件需要一起打包(如使用了PyQT5作为图形界面),否则会报错No such file or directory: 'C:\\Users\\Name\\AppData\\Local\\Temp\\_MEI190682\\./assets/main_window.ui'

Nuitka

  • 命令: python -m nuitka main.py --standalone --onefile --windows-console-mode=disable --include-data-dir=assets=assets --enable-plugin=pyqt5 --lto=yes --follow-imports
  • 参数 --standalone:创建独立程序 --onefile:单一可执行文件 --lto=yes:链接时优化

PyInstaller和Nuitka对比

  • 启动速度和大小
大小启动时间
PyInstaller83.3MB9.62s
Nuitka55.7MB6.88s