{"id":19862772,"url":"https://github.com/pyunits/pyunit-calendar","last_synced_at":"2025-07-21T03:33:43.261Z","repository":{"id":57458180,"uuid":"238238654","full_name":"pyunits/pyunit-calendar","owner":"pyunits","description":"农历和阳历相互的转换,农历转阳历,阳历转农历.天干地支转阳历.农历转天干地支等等关于日历之间的转换","archived":false,"fork":false,"pushed_at":"2020-06-02T10:02:43.000Z","size":810,"stargazers_count":8,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-09T21:35:26.620Z","etag":null,"topics":["python3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pyunits.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-02-04T15:28:04.000Z","updated_at":"2024-12-18T08:41:21.000Z","dependencies_parsed_at":"2022-09-07T04:10:18.132Z","dependency_job_id":null,"html_url":"https://github.com/pyunits/pyunit-calendar","commit_stats":null,"previous_names":["pyunit/pyunit-calendar"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/pyunits/pyunit-calendar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyunits%2Fpyunit-calendar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyunits%2Fpyunit-calendar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyunits%2Fpyunit-calendar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyunits%2Fpyunit-calendar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pyunits","download_url":"https://codeload.github.com/pyunits/pyunit-calendar/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pyunits%2Fpyunit-calendar/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266235484,"owners_count":23897181,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["python3"],"created_at":"2024-11-12T15:12:38.768Z","updated_at":"2025-07-21T03:33:43.243Z","avatar_url":"https://github.com/pyunits.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **pyUnit_calendar** [![](https://gitee.com/tyoui/logo/raw/master/logo/photolog.png)][1]\n\n\n## 这是一个阳历转化农历的程序(注意该模块严重依赖时间,所以系统中的时间和时区必须是:中国北京时间和中国时区)\n[![](https://img.shields.io/badge/Python-3.8-green.svg)](https://pypi.org/project/pyunit-calendar/2019.5.9/)\n[![](https://img.shields.io/badge/项目-jtyoui.plunar-black.svg)](https://github.com/jtyoui/Jtyoui)\n\n#### 介绍\nPython版阳历转农历\n\n#### 安装\n    pip install pyunit-calendar\n\n## 如果阳历和农历相互转换推荐使用\n```python\nfrom pyunit_calendar import LunarDate,LunarSolarDateConverter,SolarDate\nif __name__ == \"__main__\":\n    \"\"\"测试简单快速的农历和阳历互转\"\"\"\n    converter = LunarSolarDateConverter()\n    lunar = converter.solar_to_lunar(SolarDate(2019, 12, 6))\n    print(lunar)\n    # {\"isleap\": False, \"lunarDay\": 11, \"lunarMonth\": 11, \"lunarYear\": 2019}\n    solar = converter.lunar_to_solar(LunarDate(2019, 11, 10))\n    print(solar)\n    # {\"solarDay\": 5, \"solarMonth\": 12, \"solarYear\": 2019}\n```\n\n## 如果只有阳历转农历推荐使用\n```python\nfrom pyunit_calendar import SC\n    \nif __name__ == \"__main__\":\n    lun = SC(year=2018, month=1, day=2) #阳历转农历\n    print(lun.y)  # 农历的年,中文字符 二零一九\n    print(lun.year)  # 农历的年，阿拉伯数字 2019\n    print(lun.m)  # 农历的月份 中文字符 七\n    print(lun.month)  # 农历的月份 阿拉伯字符 7\n    print(lun.d)  # 农历的日期 中文字符 十四\n    print(lun.day)  # 阳历的日期 阿拉伯数字 15 ，注意。和农历不一样\n    print(lun.w)  # 星期几 中文字符\n    print(lun.week)  # 星期几、英文字符\n    print(lun.h)  # 节日\n    print(lun)  # 二零一九年 七月 十四 星期四 无\n```\n\n## 如果只有农历转阳历推荐使用\n```python\nfrom pyunit_calendar import CTC\nif __name__ == \"__main__\":\n    c = CTC(ctc_year=2017, ctc_mon=-6, ctc_day=8)  # 农历的日期2017年闰6月初八\n    print(c.find_sc())  # 阳历：2017年7月30日\n    print(c.get_year())  # 2017\n    print(c.get_month())  # 7\n    print(c.get_day())  # 30\n\n```\n\n## 天干地支转日历(转阳历和农历)\n```python\nfrom pyunit_calendar import BatchCalendar\n\nif __name__ == \"__main__\":\n    bc=BatchCalendar() #下载数据\n    print(\"-----------------------------\")\n    # 农历\n    print(bc.ctc_to_sc(\"1984年闰十月初三\"))  # 农历转阳历 1984年11月25日\n    print(bc.ctc_to_td(\"1984年闰十月初三\"))  # 农历转天干地支 甲子年乙亥月癸亥日\n    print(\"-----------------------------\")\n    # 阳历\n    print(bc.sc_to_ctc(\"1984年11月25日\"))  # 阳历转农历 1984年闰十月初三\n    print(bc.sc_to_td(\"1984年11月25日\"))  # 阳历转天干地支 甲子年乙亥月癸亥日\n    print(\"-----------------------------\")\n    # 天干地支\n    print(bc.td_to_ctc(\"甲子年乙亥月癸亥日\"))  # 天干地支转农历:[\"1984年闰十月初三\", \"2044年九月廿一\"]\n    print(bc.td_to_sc(\"甲子年乙亥月癸亥日\"))  # 天干地支转阳历:[\"1984年11月25日\", \"2044年11月10日\"]\n```\n\n## Docker安装(注意该模块严重依赖时间,所以系统中的时间和时区必须是:中国北京时间和中国时区)\n    docker pull jtyoui/pyunit-calendar\n    docker run -P -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -d jtyoui/pyunit-calendar\n\n\n### 农历转阳历\n|**参数名**|**类型**|**是否可以为空**|**说明**|\n|------|------|-------|--------|\n|year|int|YES|输入阿拉伯数字的年|\n|month|int|YES|输入阿拉伯数字的月(如果是闰月前面添加负号:如-4表示闰4月)|\n|day|int|YES|输入阿拉伯数字的日|\n\n### 请求示例\n\u003e #### Python3 Requests测试\n```python\nimport requests\n\nurl = \"http://127.0.0.1:32768/pyunit/calendar/LunarCalendar\"\ndata = {\n    \"year\": 2020,\n    \"month\": -4,\n    \"day\": 11\n}\nheaders = {\"Content-Type\": \"application/x-www-form-urlencoded\"}\nresponse = requests.post(url, data=data, headers=headers).json()\nprint(response)\n``` \n\n\u003e #### 返回结果\n```json\n{\n\t\"code\": 200,\n\t\"result\": {\n\t\t\"date\": \"2020年6月2日\",\n\t\t\"day\": \"2\",\n\t\t\"month\": \"6\",\n\t\t\"year\": \"2020\"\n\t}\n}\n```\n\n### 阳历转农历\n|**参数名**|**类型**|**是否可以为空**|**说明**|\n|------|------|-------|--------|\n|year|int|YES|输入阿拉伯数字的年|\n|month|int|YES|输入阿拉伯数字的月|\n|day|int|YES|输入阿拉伯数字的日|\n\n### 请求示例\n\u003e #### Python3 Requests测试\n```python\nimport requests\n\nurl = \"http://127.0.0.1:32768/pyunit/calendar/SolarCalendar\"\ndata = {\n    \"year\": 2020,\n    \"month\": 6,\n    \"day\": 2\n}\nheaders = {\"Content-Type\": \"application/x-www-form-urlencoded\"}\nresponse = requests.post(url, data=data, headers=headers).json()\nprint(response)\n``` \n\n\u003e #### 返回结果\n```json\n{\n\t\"code\": 200,\n\t\"result\": {\n\t\t\"date\": \"二零二零年 闰四月 十一 星期二 节日：无\",\n\t\t\"day\": \"十一\",\n\t\t\"holiday\": \"无\",\n\t\t\"is_leap\": \"是\",\n\t\t\"month\": \"闰四\",\n\t\t\"week\": \"星期二\",\n\t\t\"year\": \"二零二零\"\n\t}\n}\n```\n\n### 天干地支和农历和阳历相互转日期\n|**参数名**|**类型**|**是否可以为空**|**说明**|\n|------|------|-------|--------|\n|date|string|YES|输入当前的日期:可以输入三种格式,具体看请求示例|\n\n### 请求示例\n\u003e #### Python3 Requests测试\n```python\nimport requests\n\nurl = \"http://127.0.0.1:32768/pyunit/calendar/BatchCalendar\"\ndata = {\n    \"date\": '2020年四月十一',  # 农历格式:阿拉伯数字+年+中文数字+月+中文数字\n    # \"date\": \"2020年05月03日\",  # 农历格式:阿拉伯数字+年+阿拉伯数字+月+阿拉伯数字+日\n    # \"date\": \"庚子年庚辰月丙午日\",  # 农历格式:天干地支+年+天干地支+月+天干地支+日\n}\nheaders = {\"Content-Type\": \"application/x-www-form-urlencoded\"}\nresponse = requests.post(url, data=data, headers=headers).json()\nprint(response)\n``` \n\n\u003e #### 返回结果\n```json\n{\n\t\"code\": 200,\n\t\"result\": {\n\t\t\"HSTTB\": \"庚子年庚辰月丙午日\",\n\t\t\"LunarCalendar\": \"2020年四月十一\",\n\t\t\"SolarCalendar\": \"2020年05月03日\"\n\t}\n}\n```\n\n[1]: https://blog.jtyoui.com","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyunits%2Fpyunit-calendar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpyunits%2Fpyunit-calendar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpyunits%2Fpyunit-calendar/lists"}