系统要求
操作系统版本要求
硬件要求
依赖库列表
全部功能列表
实现每个功能的详细步骤
1. 数据导入功能
步骤:
-
用户点击"导入数据"按钮 -
弹出文件选择对话框,支持.xlsx、.xls、.csv格式 -
使用pandas读取文件内容 -
检查文件中是否包含"身份证号码"或"出生日期"列 -
将数据解析并存储到data_list中 -
更新表格显示
2. 数据添加/删除功能
步骤:
-
点击"添加一行"按钮创建新的空数据行 -
选中表格中的行,点击"删除选中"移除数据 -
点击"清空所有"清除所有数据(需确认) -
实时更新data_list和表格显示
3. 农历日期转换功能
步骤:
-
调用accurate_lunar_calculator.get_lunar_date() -
将公历日期转换为农历日期对象 -
处理闰月情况(显示"闰X月") -
将数字日期转换为中文表示(如"正月初一") -
格式化输出完整的农历日期字符串
4. 天干地支计算功能
步骤:
-
调用accurate_lunar_calculator.get_accurate_ganzhi() -
获取年、月、日的天干地支组合 -
结合生肖信息生成完整的天干地支字符串 -
格式化为"甲子鼠年乙丑月丙寅日"样式
5. 生肖计算功能
步骤:
-
根据农历年份计算生肖 -
使用公式:(农历年份 - 4) % 12 获取生肖索引 -
从SHENG_XIAO列表中获取对应的生肖字符 -
返回生肖名称(如"鼠"、"牛"等)
6. 星座计算功能
步骤:
-
根据公历月份和日期确定星座 -
遍历XING_ZUO列表中的星座日期范围 -
匹配当前日期所在的星座区间 -
返回对应的星座名称
7. 年龄计算功能
步骤:
-
获取当前系统日期 -
计算与出生日期的年份差 -
检查是否已过生日(调整年龄计算) -
返回整型年龄数值
8. 星期计算功能
步骤:
-
使用datetime的weekday()方法获取星期索引 -
将数字索引转换为中文星期表示 -
返回"周一"到"周日"的字符串
9. 节气计算功能
步骤:
-
调用accurate_lunar_calculator.get_jie_qi()获取当前节气 -
如果不是节气日,计算所在的节气区间 -
使用_jieqi_range方法确定节气范围 -
返回节气名称或区间(如"立春"或"立春-雨水")
10. 数据导出功能
步骤:
-
用户点击"导出结果"按钮 -
弹出文件保存对话框,默认.xlsx格式 -
将data_list转换为pandas DataFrame -
将列名映射为中文显示 -
使用to_excel方法保存文件
11. 模板下载功能
步骤:
-
用户点击"下载模板"按钮 -
弹出文件保存对话框 -
创建包含标准列名的空DataFrame -
保存为Excel模板文件
12. 表格编辑功能
步骤:
-
双击表格单元格触发编辑事件 -
创建编辑输入框并定位到单元格位置 -
绑定回车键保存、ESC键取消事件 -
更新data_list中的数据 -
刷新表格显示
13. 日志记录功能
步骤:
-
配置logging基础设置 -
记录程序启动、关闭事件 -
记录用户操作(导入、导出、转换等) -
记录错误和异常信息 -
日志文件保存为lunar_converter.log
14. 批量转换功能
步骤:
-
用户点击"全部转换"按钮 -
遍历data_list中的所有数据行 -
对每行数据执行完整的转换流程 -
统计成功和失败的数量 -
显示转换结果提示
注意事项列表
安装注意事项
-
⚠️ 确保Python版本为3.6或更高 -
⚠️ 安装前先升级pip:
python -m pip install --upgrade pip
-
⚠️ 如遇到权限问题,使用虚拟环境安装 -
⚠️ macOS用户可能需要安装tkinter:
brew install python-tk
运行注意事项
-
⚠️ 确保accurate_lunar_calculator模块在Python路径中 -
⚠️ 首次运行可能需要较长时间加载农历计算数据 -
⚠️ 处理大量数据时请耐心等待转换完成 -
⚠️ 确保有足够的磁盘空间保存导出文件
数据格式注意事项
-
⚠️ 身份证号码必须是18位数字 -
⚠️ 日期格式支持: YYYY/MM/DD, YYYY-MM-DD,
YYYY.MM.DD, YYYYMMDD
-
⚠️ Excel文件编码应为UTF-8以避免中文乱码 -
⚠️ 模板文件中的列名必须准确匹配
功能使用注意事项
-
⚠️ 导入文件前请先下载模板了解格式要求 -
⚠️ 转换前请确保日期数据格式正确 -
⚠️ 编辑单元格后需点击"全部转换"重新计算 -
⚠️ 导出前请确认所有数据已正确转换
系统兼容性注意事项
-
⚠️ Windows系统需确保中文字体支持 -
⚠️ macOS系统可能需要额外配置字体渲染 -
⚠️ Linux系统需安装中文字体包 -
⚠️ 不同系统下的界面显示可能略有差异
错误处理注意事项
-
⚠️ 程序遇到错误时会记录到日志文件中 -
⚠️ 转换失败的数据行会显示空白而非错误信息 -
⚠️ 文件操作失败时会显示具体的错误信息 -
⚠️ 建议定期查看日志文件排查问题
性能注意事项
-
⚠️ 处理超过1000行数据时性能可能下降 -
⚠️ 建议分批次处理大量数据 -
⚠️ 关闭其他大型程序以提高运行效率 -
⚠️ 确保系统有足够的内存运行程序

