使用 PyQt 制作简易软件简明笔记

使用 PyQt 制作简易软件简明笔记

💡 原文中文,约10800字,阅读约需26分钟。
📝

内容提要

最近在统计数据的重复性时,使用Excel处理标准差公式。然而,Excel本身内置了求取标准差的函数,于是决定用Python编写一个简单的程序来计算标准差。通过使用PyQt框架搭建环境,并实现基础功能,可以输入数据并计算标准差。进一步完善程序,增加数据清洗、验证、错误处理、历史记录、导出数据等功能。最后,使用PyInstaller将程序打包成exe文件,方便在没有Python环境的情况下运行。

🔎

延伸解读

从Excel到自写工具:需求驱动的开发思路

作者原本用Excel处理标准差,后来发现Excel内置函数,但由此想到写一个更便捷的小程序。这种从实际痛点出发、逐步完善功能的做法,适合初学者借鉴。文章展示了如何用PyQt搭建界面,并借助GPT逐步实现需求,体现了“先跑通再优化”的实用开发路径。

数据输入体验的优化:从逗号分隔到直接粘贴

最初程序要求用逗号分隔数据,但作者的数据来自Excel,手动添加逗号很麻烦。于是改为支持从Excel直接粘贴,程序自动按行或空格拆分数字。这个小改进显著提升了易用性,也说明好的工具应贴合用户的实际操作习惯,而非让用户适应程序。

程序结构拆分与功能扩展的平衡

随着功能增加,作者将代码拆分为main.py、ui.py、processor.py和utils.py,分别处理启动、界面、计算和工具函数。这种模块化便于维护和扩展,但也增加了文件数量。对于小型工具,是否拆分取决于功能复杂度;若后续还要增加数据清洗、历史记录等,拆分是合理选择。

打包成exe的便利与体积代价

使用PyInstaller的--onefile和--windowed选项,可将程序打包成单个exe,方便在没有Python环境的电脑上运行。但打包后体积较大(如50M),因为包含了numpy等必要模块。作者指出后续可学习优化资源、排除不必要的模块,在便利性和体积之间找到平衡。

❓

Q&A

如何使用PyQt创建一个计算标准差的程序?

可以通过在PyCharm中创建项目,使用PyQt框架编写代码,设置输入框和按钮,接收用户输入的数据并计算标准差。

程序如何处理从Excel复制的数据?

程序支持从Excel粘贴数据,用户可以直接将数据粘贴到文本框中,程序会自动处理并计算标准差。

如何将Python程序打包成exe文件?

使用PyInstaller可以将Python程序打包成exe文件,命令为'pyinstaller --onefile --windowed your_script.py'。

程序中如何实现数据清洗和错误处理?

程序中通过输入验证和异常处理来实现数据清洗,确保用户输入的数据格式正确,并在出现错误时给出提示。

使用PyQt开发程序有哪些步骤?

主要步骤包括搭建开发环境、实现基础功能、完善程序功能、拆分程序结构和打包程序。

打包后的程序体积为什么会很大?

打包后的程序体积较大是因为包含了必要的程序包,如numpy模块,后续可能需要优化资源以减小体积。

➡️

继续阅读