python代码封装成exe

安装pyinstaller

在命令行中输入以下命令:

pip install pyinstaller

打包exe文件

在命令行中进入要打包的python文件所在目录,输入以下命令:

pyinstaller -F 文件名.py

其中,-F参数表示打包成单个exe文件,文件名.py为要打包的python文件名。

查看打包结果

打包完成后,在dist目录下会生成一个exe文件和其他必要的文件,可以直接运行exe文件。

注意:如果程序中使用了其他模块或库,需要在打包时加上相应的参数,例如:

pyinstaller -F --hidden-import=模块名 文件名.py

添加图标

如果想要为打包后的exe文件添加图标,可以在打包命令中加上–icon参数,例如:

pyinstaller -F --icon=图标文件路径 文件名.py

其中,图标文件路径为图标文件的绝对路径。

添加其他文件

如果程序中需要使用其他文件,例如配置文件、图片等,可以在打包命令中加上–add-data参数,例如:

pyinstaller -F --add-data="配置文件路径;." 文件名.py

其中,配置文件路径为配置文件的绝对路径,"."表示将配置文件打包到exe文件所在目录下。

打包成无窗口程序

如果想要将程序打包成无窗口程序,可以在程序中加入以下代码:

import win32gui
import win32con

# 隐藏控制台窗口
hwnd = win32gui.GetForegroundWindow()
win32gui.ShowWindow(hwnd, win32con.SW_HIDE)

然后在打包命令中加上–noconsole参数,例如:

pyinstaller -F --noconsole 文件名.py

打包成带命令行参数的程序

如果想要将程序打包成带命令行参数的程序,可以在程序中使用argparse模块解析命令行参数,例如:

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--arg1', help='参数1')
parser.add_argument('--arg2', help='参数2')
args = parser.parse_args()

if args.arg1:
    print(args.arg1)
if args.arg2:
    print(args.arg2)

然后在打包命令中加上–add-data参数,例如:

pyinstaller -F --add-data="配置文件路径;." 文件名.py

其中,配置文件中可以包含命令行参数,例如:

--arg1 参数1 --arg2 参数2

打包成带GUI界面的程序

如果想要将程序打包成带GUI界面的程序,可以使用Tkinter或PyQt等GUI库编写程序,并在打包命令中加上–windowed参数,例如:

pyinstaller -F --windowed 文件名.py

其中,–windowed参数表示打包成带GUI界面的程序。