weixin_45067920 2023-11-15 16:39 采纳率: 0%
浏览 2

python输入年份输出这一年的24节气日期

python输入年份,输出这一年的24节气的日期以及农历节日

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-11-16 05:09
    关注

    【以下回答由 GPT 生成】

    from lunarcalendar import Lunar, Solar
    import jieba
    import requests
    from bs4 import BeautifulSoup
    
    # 通过爬取网站获取24节气日期
    def get_solar_terms(year):
        url = 'http://www.360doc.com/content/20/0101/10/2561954_884792573.shtml'
        res = requests.get(url)
        res.encoding = 'utf-8'
        soup = BeautifulSoup(res.text, 'html.parser')
        lunar_text = soup.find('pre').get_text()
    
        # 使用jieba分词将文本按行分词
        seg_list = jieba.lcut(lunar_text, cut_all=True)
    
        solar_terms = {}
        for i in range(len(seg_list)):
            if '日' in seg_list[i]:
                solar_terms[seg_list[i-2]] = seg_list[i]
    
        return solar_terms
    
    # 通过lunarcalendar库获取农历节日
    def get_lunar_festivals(year):
        lunar_festivals = Lunar(year).lunar_festival()
        return lunar_festivals
    
    # 主程序
    def main():
        year = int(input("请输入年份:"))
        solar_terms = get_solar_terms(year)
        lunar_festivals = get_lunar_festivals(year)
    
        print("=== 24节气日期 ===")
        for term, date in solar_terms.items():
            print(f"- {term}{date}")
    
        print("=== 农历节日 ===")
        for festival in lunar_festivals:
            print(f"- {festival}{lunar_festivals[festival]}")
    
    if __name__ == "__main__":
        main()
    


    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 11月15日