近期工作中遇到了节假日场景,而七夕节、中秋节、重阳节、端午节、清明节、春节这些都是农历的节日,对应到阳历日期并不是固定的。

所以就很有必要有一个转换方法,实现农历日期到阳历日期的转换。

已经有很多大牛对此做了实现,这里记录下亲测好用的方法。

1、首推:简书上 “Python 农历公历相互转换” https://www.jianshu.com/p/272c5dfa3eef

他在github上有发布模块,可以直接pip安装使用。

并且在介绍页有使用方法示例,对于想快速使用、不关心实现细节的用户非常友好了。

为原作者点赞,非常有用的方法模块。


from zhdate import ZhDate as lunar_date
from datetime import datetime#农历转阳历
date1 = lunar_date(2020,7,7) # 农历 2020年7月7 日期
print(date1) #农历2020年7月7日,直接返回农历日期字符串
print(date1.to_datetime()) #2020-08-25 00:00:00,农历转换成阳历日期  datetime 类型#阳历转农历
dt_date2 = datetime(2020, 8, 25) #python自带的阳历date类型
print(dt_date2)  #2020-08-25 00:00:00
date2 = lunar_date.from_datetime(dt_date2) # 农历2020年7月7日 , 从阳历日期转换成农历日期
print(date2)#20年闰4月,转的阳历是第二个4月的阳历日期
date3 = lunar_date(2020, 4, 30, leap_month=True) # 新建农历 2020年闰4月30日
print(date3.to_datetime()) #报日期超出范围的错误
date03 = lunar_date(2020, 4, 28, leap_month=True) # 新建农历 2020年闰4月28日
print(date03.to_datetime())  #2020-06-19 00:00:00# 减法支持
new_lunar_date = lunar_date(2019, 1, 1) - 30  #减整数,得到差额天数的新农历对象
print(new_lunar_date)
new_lunar_date2 = lunar_date(2019, 1, 1) - lunar_date(2018, 1, 1) #两个lunar_date对象相减得到两个农历日期的差额
print(new_lunar_date2)
new_lunar_date3 = lunar_date(2019, 1, 1) - datetime(2019, 1, 1) # 减去阳历日期,得到农历日期和阳历日期之间的天数差额
print(new_lunar_date3)
# 加法支持
new_lunar_date4 = lunar_date(2019, 1, 1) + 30 # 加整数返回相隔天数以后的新农历对象
print(new_lunar_date4)
# 中文输出
new_lunar_date5 = lunar_date(2019, 1, 1)
print(new_lunar_date5.chinese())# 当天的农历日期
print(lunar_date.today())

2、实现了 阳历日期转弄历日期的python方法 https://blog.csdn.net/qq_34160679/article/details/78713906

虽然是实现了阳历转农历,并不是我想要的转换函数,但我看他的转换函数写的不错,就复制来本地试了下,是好用的。

农历和阳历日期互转,Python实现相关推荐

  1. H5-农阳历日期互转并对应

    文章主要实现农历.阳历日期选择器 &选中日期同时获取它对应的农/阳历日期&农历.阳历对应日期切换 在代码中主要引用了iosselect.js插件,主要思路是监听iosselect.js ...

  2. 微信小程序农阳历日历选择器农阳历日期互转

    文章主要实现微信小程序中农历.阳历日期选择器 &选中日期同时获取它对应的农/阳历日期 因项目需求所以我在demo中实现选中日期并获取相应的农/阳历日期,实现的主要代码在selectdate.j ...

  3. python实现农历和阳历日期转换

    需安装sxtwl包,命令如下 pip install sxtwl 农历(Lunar calendar)<->阳历(solar calendar)转换 代码如下(基于python3): im ...

  4. 从excel表格读取日期利用python简单实现农历转阳历功能(1901-2099年之间)

    从表格E列里读取出阳历或者农历日期数据,全部转变为阳历日期写入到F列,如果是农历日期通过下面网站进行查询后,将阳历结果写进相应农历日期对应的表格中,样式如下: 网站:https://gonglinon ...

  5. ABAP 阳历日期与农历日期互转

    ABAP 阳历日期与农历日期互转 背景 项目简介 类工具方法简介 农历日期转公历日期 公历日期转农历日期 测试Demo 公历转农历 农历转公历 项目Github地址 代码 背景 SAP HCM需要一个 ...

  6. python公历转农历_python 阳历转阴历代码(2)

    main.py #!/usr/bin/env python # -*- coding: utf-8 -*- #给出阳历日期转换成阴历日期 import math from daysbetween im ...

  7. 微信小程序农历阳历日期选择器选中日期同时获取对应农/阳历日期 这个demo问题的修改

    修改以下三个文件完成BUG的修复. selectdata.js文件中将农历转阳历的代码修改成: 以下是原selectdata.js中的代码 搜索:calendarConverter.lunar2sol ...

  8. java 公历 农历_java已知阳历日期求对应阴历日期源代码

    import java.text.*; import java.util.*; class ChineseCalendarGB { private int gregorianYear; private ...

  9. 公元元年之后的天数与日期之间的相互转换 阳历日期转农历

    前几天,有个同事问:知道现在距离公元元年1月1日的天数,如何计算日期?此前对闰年的概念也不是很清晰,在网上查了下闰年规则,整理出一个日期转换类,贴出来和大家分享,不足之处还请多多指教! 先说下闰年规则 ...

  10. flutter 底部弹框 选择农历和阳历的日期和时间

    最近在做一个万年历的项目,用到了选择出生日期加时辰,关键是还农历和阳历切换的,找了半天也没找到现成的,那就自己做一个吧,首先,效果如图 由于是初学的flutter,首次用flutter做项目,可能各方 ...

最新文章

  1. 基于haproxy+keepalive+varnish实现lnmp企业级架构
  2. Java 参数数后面跟三个点(...)的含义
  3. SSH学习-Hibernate对象生命周期管理
  4. 2019ICPC(南京) - super_log(欧拉降幂)
  5. 【GIF动画+完整可运行源代码】C++实现 快速排序——十大经典排序算法之六
  6. C++中数字和字符的转换
  7. 一个报文的路由器之旅_一个报文的路由器之旅
  8. Elasticsearch了解多少,说说你们公司es的集群架构,索引数据大小,分片有多少,以及一些调优手段 。
  9. java bean参数清空_Java互联网架构-Spring IOC底层源码分析
  10. LinQ—Lambda表达式
  11. 行为型模式——状态模式(十一)
  12. jQuery Mobile主题使用与定制
  13. c语言商品管理系统文件,c语言商品管理系统(文件应用).doc
  14. Django模板语言及视图
  15. Tensorflow(r1.4)API--tf.summary.scalar
  16. excel表格乱码怎么解决呢?
  17. while下有scanner循环比对,直至输入满足条件终止循环,equals,韩梅梅do...while不断努力走向chengg
  18. Math.floor cei round
  19. Win7报错:Explorer.EXE不支持此接口的解决办法
  20. 【BP数据预测】基于matlab天牛须算法优化BP神经网络数据预测【含Matlab源码 1318期】

热门文章

  1. android timepicker 固定样式,android-如何设置格式为24h的TimePicker显示
  2. 保定市2017年计算机高考试题,保定三中名师第一时间点评2017年高考理综试卷
  3. 地铁票务管理系统_[地铁票务管理论文] 地铁票务系统 场景法
  4. java分布式-一致性
  5. 广州坐标系转换大地2000_就是这样操作!从地方坐标系到2000国家大地坐标系的转换...
  6. vs2017安装nuget包生成和管理工具
  7. TShockwaveFlash的安装及其属性和方法
  8. 微信支付商家转账到零钱功能使用教程
  9. 模2除法(CRC冗余码计算)和二进制/十进制除法
  10. windows图片查看器背景颜色更改