Python-打包流程

文章-摘要
Roan GPT
AI初始化中...
介绍自己 👨🚀
本文简介(下一条) 🕹️
推荐文章(相关联) 📚
前往主页 🏚️
前往爱发电购买
工具编写架构跟PyInstaller打包流程
一。工具制作框架:
1.工具项目结构
- 1.安装 Python 解释器。
- 2.创建一个新的虚拟环境以隔离项目依赖。
- 3.激活虚拟环境。
- 4.使用 pip 安装所需的包。
- 5.编写 Python 代码,引用这些包。
1 | my_project/ |
2.工具编写架构:
1 | # module1.py |
3.工具测试模块【开发环节】-暂时记录:
A.单元测试(Unit Tests):测试单个组件(如函数或类)的功能。
- 目的:验证单个组件(如函数、方法或类)的行为是否正确。
- 特点:通常由开发者编写,针对软件的最小可测试部分,快速执行,易于维护。
- 作用:确保单个组件按预期工作,有助于捕捉早期的逻辑错误和边界条件问题,便于代码重构,因为它们提供了一个安全网来防止对现有功能的意外更改。
B.集成测试(Integration Tests):测试多个组件协同工作的功能。
C.系统测试(System Tests):测试整个程序的功能。
D.验收测试(Acceptance Tests):确保软件满足用户需求。测试结构,让我知道测试结构用来干嘛
测试结构的作用:
- 提高代码质量:通过不同层面的测试,可以确保代码的质量和稳定性。
- 减少错误:及时发现和修复错误,避免在软件开发的后期或发布后出现问题。
- 增强信心:对代码进行全面测试可以增加对软件正确性的信心。
- 促进维护和扩展:良好的测试结构使得维护现有代码和添加新功能变得更容易。
4.多脚本文件合并串联【多功能组件】
- 假设你有两个 Python 脚本 tool1.py 和 tool2.py,你可以创建一个新的脚本 main.py,在这个脚本中导入并使用 tool1 和 tool2 中的功能。然后,你可以使用 —onefile 选项对 main.py 进行打包
1 | # main.py |
二.使用 PyInstaller 手动打包-指南 :
1.安装 PyInstaller
1 | pip install pyinstaller |
2.执行 PyInstaller:
- 确保你的 Python 脚本可以在你的环境中正常运行,在命令行中,导航到包含你的 Python 脚本的目录。运行以下命令来创建可执行文件:
1 | pyinstaller 你的工具名.py // |
3.额外附加文件 PyInstaller:
PyInstaller 将分析你的脚本,找出所有必要的依赖,并创建一个 dist 目录,其中包含了可执行文件。
添加额外的文件(如果需要)
如果你的程序依赖于非代码文件(如图像、数据文件等),你需要告诉 PyInstaller 包含这些文件。这可以通过编辑 PyInstaller 创建的 .spec 文件来完成。
在 .spec 文件中,你可以使用 datas 列表来添加额外的文件或目录。例如:
1 | a = Analysis(['your_script.py'], |
- 这里,(‘path/to/data/files’, ‘data’) 表示将 path/to/data/files 目录下的所有内容复制到可执行文件的 data 目录中。
修改 .spec 文件后,重新运行 PyInstaller,使用 .spec 文件作为输入:
1 | pyinstaller your_script.spec |
三.使用 PyInstaller 自动打包:
1 | import subprocess //执行系统命令 |
定义函数 package_scripts_in_directory:
这个函数是脚本的核心,用于打包指定目录下的所有 Python 脚本。
参数:directory: 指定包含 Python 脚本的目录;additional_args: 一个列表,包含传递给 PyInstaller 的额外参数。
检查 additional_args:如果调用函数时没有提供 additional_args,则将其设置为一个空列表。
获取 Python 文件列表:使用 os.listdir(directory) 获取指定目录下的所有文件和目录。
列表推导式 [f for f in os.listdir(directory) if f.endswith(‘.py’)] 用于筛选出所有以 .py 结尾的文件(即 Python - 脚本)。
遍历并打包每个 Python 脚本:对于目录中的每个 Python 文件,构建一个 PyInstaller 命令来打包该文件。 os.path.join(directory, script) 用于生成完整的文件路径。[‘pyinstaller’, script_path] + additional_args 构建了完整的 PyInstaller 命令。
- 执行 PyInstaller 命令:使用 subprocess.run(command, check=True) 执行命令。如果命令执行失败,subprocess.CalledProcessError 将被抛出。
- 异常处理:如果在执行 PyInstaller 命令时出现错误,将捕获异常并打印错误信息。
- 脚本的入口点:if name == “main“: 确保当脚本被直接运行时,下面的代码块将被执行。 package_scripts_in_directory(‘.’, additional_args=[‘—onefile’]) 调用函数,打包当前目录下的所有 Python 脚本,并- 传递 —onefile 作为额外参数,这将创建单文件可执行文件。
四。资料:
教程:
官方:
- Python-官方文档
- Python-各种库和工具
- Python-PEP8-编码风格指南- “Python Enhancement Proposal #8”(Python 增强提案 8)它是 Python 官方推荐的编码风格指南,旨在提高 Python 代码的可读性和一致性。遵循 PEP 8 的指导原则可以帮助开发者编写风格一致、易于理解和维护的代码。
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果




