大数跨境
0
0

农历转换工具V1.0

农历转换工具V1.0 Angela的外贸日常
2025-09-19
52

系统要求

操作系统版本要求

操作系统

最低版本要求

推荐版本

Windows

Windows 7 SP1

Windows 10 或更高

macOS

macOS 10.13 (High Sierra)

macOS 11 (Big Sur) 或更高

Linux

Ubuntu 18.04 / CentOS 7

Ubuntu 20.04 / CentOS 8 或更高

硬件要求

     内存: 最低 2GB,推荐 4GB 或以上
     存储空间: 至少 100MB 可用空间
     屏幕分辨率: 1024×768 或更高
     处理器: 双核 1.5GHz 或更高

依赖库列表

库名称

版本要求

用途说明

安装命令

pandas

≥1.3.0

数据处理和Excel文件操作

pip install pandas==1.5.3

openpyxl

≥3.0.0

Excel文件读写支持

pip install openpyxl==3.1.2

xlrd

≥2.0.0

旧版Excel文件读取

pip install xlrd==2.0.1

tkinter

Python内置

GUI界面开发

无需安装

logging

Python内置

日志记录

无需安装

datetime

Python内置

日期时间处理

无需安装

re

Python内置

正则表达式处理

无需安装

os

Python内置

操作系统接口

无需安装

calendar

Python内置

日历功能

无需安装

全部功能列表

   1.数据导入功能
   2.数据添加/删除功能
   3.农历日期转换功能
   4.天干地支计算功能
   5.生肖计算功能
   6.星座计算功能
   7.年龄计算功能
   8.星期计算功能
   9.节气计算功能
   10.数据导出功能
   11.模板下载功能
   12.表格编辑功能
   13.日志记录功能
   14.批量转换功能

实现每个功能的详细步骤

1. 数据导入功能

步骤:

  1. 用户点击"导入数据"按钮
  2. 弹出文件选择对话框,支持.xlsx、.xls、.csv格式
  3. 使用pandas读取文件内容
  4. 检查文件中是否包含"身份证号码"或"出生日期"列
  5. 将数据解析并存储到data_list中
  6. 更新表格显示

2. 数据添加/删除功能

步骤:

  1. 点击"添加一行"按钮创建新的空数据行
  2. 选中表格中的行,点击"删除选中"移除数据
  3. 点击"清空所有"清除所有数据(需确认)
  4. 实时更新data_list和表格显示

3. 农历日期转换功能

步骤:

  1. 调用accurate_lunar_calculator.get_lunar_date()
  2. 将公历日期转换为农历日期对象
  3. 处理闰月情况(显示"闰X月")
  4. 将数字日期转换为中文表示(如"正月初一")
  5. 格式化输出完整的农历日期字符串

4. 天干地支计算功能

步骤:

  1. 调用accurate_lunar_calculator.get_accurate_ganzhi()
  2. 获取年、月、日的天干地支组合
  3. 结合生肖信息生成完整的天干地支字符串
  4. 格式化为"甲子鼠年乙丑月丙寅日"样式

5. 生肖计算功能

步骤:

  1. 根据农历年份计算生肖
  2. 使用公式:(农历年份 - 4) % 12 获取生肖索引
  3. 从SHENG_XIAO列表中获取对应的生肖字符
  4. 返回生肖名称(如"鼠"、"牛"等)

6. 星座计算功能

步骤:

  1. 根据公历月份和日期确定星座
  2. 遍历XING_ZUO列表中的星座日期范围
  3. 匹配当前日期所在的星座区间
  4. 返回对应的星座名称

7. 年龄计算功能

步骤:

  1. 获取当前系统日期
  2. 计算与出生日期的年份差
  3. 检查是否已过生日(调整年龄计算)
  4. 返回整型年龄数值

8. 星期计算功能

步骤:

  1. 使用datetime的weekday()方法获取星期索引
  2. 将数字索引转换为中文星期表示
  3. 返回"周一"到"周日"的字符串

9. 节气计算功能

步骤:

  1. 调用accurate_lunar_calculator.get_jie_qi()获取当前节气
  2. 如果不是节气日,计算所在的节气区间
  3. 使用_jieqi_range方法确定节气范围
  4. 返回节气名称或区间(如"立春"或"立春-雨水")

10. 数据导出功能

步骤:

  1. 用户点击"导出结果"按钮
  2. 弹出文件保存对话框,默认.xlsx格式
  3. 将data_list转换为pandas DataFrame
  4. 将列名映射为中文显示
  5. 使用to_excel方法保存文件

11. 模板下载功能

步骤:

  1. 用户点击"下载模板"按钮
  2. 弹出文件保存对话框
  3. 创建包含标准列名的空DataFrame
  4. 保存为Excel模板文件

12. 表格编辑功能

步骤:

  1. 双击表格单元格触发编辑事件
  2. 创建编辑输入框并定位到单元格位置
  3. 绑定回车键保存、ESC键取消事件
  4. 更新data_list中的数据
  5. 刷新表格显示

13. 日志记录功能

步骤:

  1. 配置logging基础设置
  2. 记录程序启动、关闭事件
  3. 记录用户操作(导入、导出、转换等)
  4. 记录错误和异常信息
  5. 日志文件保存为lunar_converter.log

14. 批量转换功能

步骤:

  1. 用户点击"全部转换"按钮
  2. 遍历data_list中的所有数据行
  3. 对每行数据执行完整的转换流程
  4. 统计成功和失败的数量
  5. 显示转换结果提示

注意事项列表

安装注意事项

  1. ⚠️ 确保Python版本为3.6或更高
  2. ⚠️ 安装前先升级pip:

 python -m pip install --upgrade pip

  1. ⚠️ 如遇到权限问题,使用虚拟环境安装
  2. ⚠️ macOS用户可能需要安装tkinter:

 brew install python-tk

运行注意事项

  1. ⚠️ 确保accurate_lunar_calculator模块在Python路径中
  2. ⚠️ 首次运行可能需要较长时间加载农历计算数据
  3. ⚠️ 处理大量数据时请耐心等待转换完成
  4. ⚠️ 确保有足够的磁盘空间保存导出文件

数据格式注意事项

  1. ⚠️ 身份证号码必须是18位数字
  2. ⚠️ 日期格式支持: YYYY/MM/DD, YYYY-MM-DD,

 YYYY.MM.DD, YYYYMMDD

  1. ⚠️ Excel文件编码应为UTF-8以避免中文乱码
  2. ⚠️ 模板文件中的列名必须准确匹配

功能使用注意事项

  1. ⚠️ 导入文件前请先下载模板了解格式要求
  2. ⚠️ 转换前请确保日期数据格式正确
  3. ⚠️ 编辑单元格后需点击"全部转换"重新计算
  4. ⚠️ 导出前请确认所有数据已正确转换

系统兼容性注意事项

  1. ⚠️ Windows系统需确保中文字体支持
  2. ⚠️ macOS系统可能需要额外配置字体渲染
  3. ⚠️ Linux系统需安装中文字体包
  4. ⚠️ 不同系统下的界面显示可能略有差异

错误处理注意事项

  1. ⚠️ 程序遇到错误时会记录到日志文件中
  2. ⚠️ 转换失败的数据行会显示空白而非错误信息
  3. ⚠️ 文件操作失败时会显示具体的错误信息
  4. ⚠️ 建议定期查看日志文件排查问题

性能注意事项

  1. ⚠️ 处理超过1000行数据时性能可能下降
  2. ⚠️ 建议分批次处理大量数据
  3. ⚠️ 关闭其他大型程序以提高运行效率
  4. ⚠️ 确保系统有足够的内存运行程序

【声明】内容源于网络
0
0
Angela的外贸日常
跨境分享间 | 长期积累专业经验
内容 45910
粉丝 1
Angela的外贸日常 跨境分享间 | 长期积累专业经验
总阅读232.7k
粉丝1
内容45.9k