一个基于PyQt5开发的个人需求管理和花销预估桌面应用程序。
需求计算器帮助你管理各种个人需求,并根据频率自动计算月度总花销和年度总花销。你可以通过开启/关闭不同的需求来动态调整花销预估,实现更好的财务规划。
- 📝 添加需求: 支持添加各种个人需求,如房屋月租、每周回家支出等
- ⏰ 频率设置: 支持每天、每周、每月、每季度、每年的频率设置
- 💰 智能计算: 自动计算月度总花销和年度总花销
- ✅ 动态控制: 可以随时开启或关闭某个需求,实时调整花销预估
- 💾 数据持久化: 支持保存和加载需求数据
- 🎨 现代化界面: 基于PyQt5的美观图形用户界面
- Python: 3.12+
- PyQt5: 5.15.11+ (图形用户界面)
- JSON: 数据存储格式
- Python 3.12 或更高版本
- PyQt5 5.15.11 或更高版本
-
克隆项目
git clone <repository-url> cd DesireCaculator
-
安装依赖
pip install PyQt5>=5.15.11
-
运行应用
python main.py
-
在左侧"添加新需求"区域填写信息:
- 需求名称: 输入需求的描述,如"房屋月租"
- 频率: 选择需求的频率(每天/每周/每月/每季度/每年)
- 花销: 输入每次的花销金额(元)
-
点击"添加需求"按钮
- 启用/禁用: 点击需求项前的复选框来开启或关闭该需求
- 删除需求: 点击需求项右侧的"删除"按钮删除该需求
- 实时统计: 系统会自动计算并显示月度总花销和年度总花销
- 保存数据: 点击"保存数据"按钮将当前需求保存到
desires.json
文件 - 加载数据: 点击"加载数据"按钮从文件加载之前保存的需求
- 清空所有: 点击"清空所有"按钮删除所有需求
项目包含一个示例数据文件 sample_desires.json
,包含以下常见需求:
需求名称 | 频率 | 花销(元) | 月度花销 |
---|---|---|---|
房屋月租 | 每月 | 3000 | ¥3000.00 |
每周回家支出 | 每周 | 200 | ¥866.00 |
每年送礼支出 | 每年 | 5000 | ¥416.67 |
每月找对象支出 | 每月 | 500 | ¥500.00 |
每月打理形象支出 | 每月 | 300 | ¥300.00 |
每周看电影 | 每周 | 80 | ¥346.40 |
每月旅游 | 每月 | 1000 | ¥1000.00 |
每天吃饭 | 每天 | 50 | ¥1500.00 |
每季度买衣服 | 每季度 | 800 | ¥266.67 |
系统根据频率自动计算月度花销:
- 每天: 月度花销 = 单次花销 × 30
- 每周: 月度花销 = 单次花销 × 4.33 (52/12)
- 每月: 月度花销 = 单次花销
- 每季度: 月度花销 = 单次花销 ÷ 3
- 每年: 月度花销 = 单次花销 ÷ 12
年度花销 = 月度总花销 × 12
DesireCaculator/
├── main.py # 主程序文件
├── sample_desires.json # 示例数据文件
├── desires.json # 用户数据文件(运行时生成)
├── pyproject.toml # 项目配置文件
└── README.md # 项目说明文档
- 现代化设计: 使用PyQt5构建的现代化界面
- 响应式布局: 支持窗口大小调整
- 直观操作: 清晰的布局和易于理解的交互
- 实时反馈: 操作后立即更新统计信息
DesireCalculator
: 主应用类init_ui()
: 初始化用户界面create_left_panel()
: 创建左侧添加需求面板create_right_panel()
: 创建右侧需求列表面板add_desire()
: 添加新需求update_display()
: 更新需求列表显示update_statistics()
: 更新统计信息save_desires()
: 保存数据load_desires()
: 加载数据
每个需求包含以下字段:
{
"desire_id": {
"name": "需求名称",
"frequency": "频率",
"cost": 花销金额,
"enabled": true/false
}
}
- 添加所有可能的需求并设置优先级
- 设置月度预算目标
- 查看实时预算进度
- 根据优先级和预算情况调整需求
- 添加当前所有生活需求并分类
- 按类别查看支出分布
- 分析哪些类别花费最多
- 使用筛选功能专注分析特定类别
- 设置目标储蓄金额作为预算
- 计算当前总花销
- 通过优先级和类别筛选找到可优化支出
- 导出详细报告做长期规划
- 为不同家庭成员设置需求优先级
- 按住房、教育、医疗等类别管理支出
- 月度预算控制和年度规划
- 为个人项目添加相关需求
- 设置项目预算上限
- 实时监控项目成本
- 添加当前生活方式的所有需求
- 设置预算目标
- 通过优先级筛选找到可削减支出
- 导出报告做决策支持
-
应用无法启动
- 确保Python版本 >= 3.12
- 确保PyQt5已正确安装:
pip install PyQt5>=5.15.11
-
界面显示异常
- 尝试调整窗口大小
- 检查系统显示设置
-
数据无法保存
- 检查当前目录是否有写入权限
- 确保磁盘空间充足
如果遇到问题,可以:
- 检查控制台错误信息
- 确认依赖版本是否正确
- 重新安装PyQt5:
pip install --upgrade PyQt5
本项目采用MIT许可证。
欢迎提交Issue和Pull Request来改进这个项目!
开始你的需求管理之旅吧! 🎉