搜索某天是星期几 搜索某年是否闰年 打印输出某年的日历 输出今天所在的日历 农历查询 退出
时间: 2024-06-08 11:09:59 浏览: 135
求某一天是周几,打印周历、月历和求某年的节假日函数集合。C语言代码,下载即可用!
很高兴为您服务!以下是您需要的功能实现:
```
import calendar
import datetime
import time
import requests
def search_weekday(date_str):
"""
搜索某天是星期几
:param date_str: 日期字符串,格式为"YYYY-MM-DD"
:return: 返回该天是星期几,例如"Monday"
"""
weekdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
year, month, day = map(int, date_str.split("-"))
weekday_num = datetime.date(year, month, day).weekday()
return weekdays[weekday_num]
def is_leap_year(year):
"""
搜索某年是否闰年
:param year: 年份
:return: 如果是闰年返回True,否则返回False
"""
return calendar.isleap(year)
def print_calendar(year):
"""
打印输出某年的日历
:param year: 年份
"""
print(f"Calendar for the year {year}")
cal = calendar.calendar(year)
print(cal)
def print_today_calendar():
"""
输出今天所在的日历
"""
now = datetime.datetime.now()
year = now.year
month = now.month
print(f"Calendar for the month {month} of year {year}")
cal = calendar.month(year, month)
print(cal)
def lunar_calendar(date_str):
"""
农历查询
:param date_str: 日期字符串,格式为"YYYY-MM-DD"
"""
# 获取当前日期的年月日
year, month, day = map(int, date_str.split("-"))
# 获取当前日期的农历信息
url = f"http://apis.juhe.cn/calendar/day?date={month}-{day}&key=您申请的APPKEY"
res = requests.get(url)
lunar_info = res.json()["result"]["data"]["lunar"]
# 打印农历信息
print(f"Lunar calendar for {date_str}: {lunar_info}")
if __name__ == '__main__':
while True:
print("请选择需要执行的操作:")
print("1. 搜索某天是星期几")
print("2. 搜索某年是否闰年")
print("3. 打印输出某年的日历")
print("4. 输出今天所在的日历")
print("5. 农历查询")
print("6. 退出")
choice = input("请输入操作编号:")
if choice == "1":
date_str = input("请输入日期,格式为YYYY-MM-DD:")
weekday = search_weekday(date_str)
print(f"{date_str} is {weekday}")
elif choice == "2":
year = int(input("请输入年份:"))
is_leap = is_leap_year(year)
if is_leap:
print(f"{year} is a leap year.")
else:
print(f"{year} is not a leap year.")
elif choice == "3":
year = int(input("请输入年份:"))
print_calendar(year)
elif choice == "4":
print_today_calendar()
elif choice == "5":
date_str = input("请输入日期,格式为YYYY-MM-DD:")
lunar_calendar(date_str)
elif choice == "6":
print("已退出程序。")
break
else:
print("无效的操作,请重新输入。")
```
注意,如果您需要使用农历查询功能,需要前往聚合数据申请相应的API Key,并将代码中的"您申请的APPKEY"替换为您的API Key。
阅读全文